私はここで正しいことをするための十分な知識がありません。クラスメソッドを使用して静的変数を設定できますか?
私は、現在作業しているレベルから1ステップ下がっている多数の番号を持っています。私のビューコントローラは、親オブジェクトのテーブルを表示しており、それぞれに子オブジェクトの数を示す詳細インジケータが表示されています。
ユーザは、NSDictionary
に格納されているフィルタ条件のセットを作成できます。私の子オブジェクトには、これらの基準に基づいてフィルタが通過するかどうかを判断するために実行する複雑な計算セットがあります。これは外部的には単純な読み取り専用のブール値プロパティで表されます。
子供のオブジェクトに静的変数を設定してフィルタ設定辞書を保持することで、ユーザーのデフォルトまたは同様のものを呼び出す必要がなくなり、各子オブジェクトのフィルタ設定を取得できます。
フィルタ設定を作成する時点で、私は子オブジェクトへの特定のポインタを持っていないので、フェッチ要求を作成するだけではなく、これは適切なのですか?
.H:
@interface Child : NSManagedObject
+(void)setFilterSettings:(NSDictionary*)newFilterSettings;
@end
が.M:
static NSDictionary *filterSettings;
@implementation Child
+(void)setFilterSettings:(NSDictionary*)newFilterSettings
{
filterSettings = newFilterSettings;
}
@end
とフィルタの設定が行われます。
[Child setFilterSettings:newFilterSettings];
は、これが有効であると仮定すると、どちらかといえば、何をすべきか、私はメモリ管理の面で行う必要がありますか?私はARCを使用しています。
はい、できます;しかし、それはあなたのタイトルのようにCではありませんが、Objective C –
@BasileStarynkevitch - 私を混乱させている静的変数の範囲はCに存在するのでしょうか? – jrturton
@hypercrypt - すべてのもの – jrturton