次のような列挙型があるとします。
typedef enum {
FooGoods = 0,
FooInsurance = 1,
} FooCategory;
そして私はそれを別のオブジェクトのプロパティとivarとして持っています
@property (nonatomic) FooCategory *category;
他のオブジェクトを作成するとき、私はからの値で埋めているので、次のNSDictionary
ようなことをします。
[baz setCategory:[aDictionary objectForKey:@"Category"]];
ただし、列挙型がポインターではないため、エラーが発生します。
これを行うと、「互換性のない整数からポインタへの変換」という警告も表示されます。
[baz setCategory:[[aDictionary objectForKey:@"Category"] intValue]];
エラー/警告のない他の方法はありますか?