NSSet
メンバーをポーリングして、各オブジェクトのプロパティなどの合計を返すように a にすばやく要求する方法があると思いましたが、NSInteger
これを Mac OS X 側のものと混同している可能性があります。ココカタッチにこれはありますか?
私が見つけることができる最も近いものは ですobjectEnumerator
。これにより、各オブジェクトをライフルで調べて、独自の変数をインクリメントできると思います。より良い方法は存在しますか?
NSSet
メンバーをポーリングして、各オブジェクトのプロパティなどの合計を返すように a にすばやく要求する方法があると思いましたが、NSInteger
これを Mac OS X 側のものと混同している可能性があります。ココカタッチにこれはありますか?
私が見つけることができる最も近いものは ですobjectEnumerator
。これにより、各オブジェクトをライフルで調べて、独自の変数をインクリメントできると思います。より良い方法は存在しますか?
theIntegerPropertyToSum
KVC 準拠の配列/セット派生クラス ( ) の各メンバーの特定のプロパティ ( ) の合計を見つけようとしている場合theSet
は、次の操作を実行できます。
NSNumber* theSum = [theSet valueForKeyPath:@"@sum.theIntegerPropertyToSum"];
単純な目的 C (2) を使用しないのはなぜですか?
NSInteger theSum = 0;
for (id obj in theSetOrArray)
theSum += obj.theIntegerPropertyToSum;
短所: 行を数えるのが好きな場合、これは長く見えます。他にも欠点はありますか - 必要な 'theIntegerPropertyToSum' プロパティを持たないオブジェクトで KVC メソッドを使用するとどうなりますか?
利点: これにより、デバッグとパフォーマンス テストが容易になると思います。さらに、他の誰かがあなたのコードを 1 年か 2 年で読むと、ここで何が起こっているかがわかります。彼らが客観的な C の行を見たことがあるかどうかにかかわらず、これは実際に何が起こっているかのように見えます。