構造体をリストやディクショナリに入れる
構造体はオブジェクトではなく、プリミティブ型の集合なので、そのままではNSArrayやNSDictionaryに入れることができません。そういう場合の便利なラッパとしてNSValueというクラスが存在しています。
例えばCGPoint(構造体)の値をNSValueに格納するには以下のように記述します。
CGPoint p1 = CGPointMake(1,2);
NSValue *v = [NSValue value:&p1 withObjCType:@encode(CGPoint)];
格納された値を取り出す場合は、以下のようになります。
CGPoint p2;
[v getValue:&p2];
参考URL
この記事は役に立ちましたか?
- EnglishWorm.com
- SinglesFan.com
- LmLab.net
- サイトマップ
- 運営者について