私はノートと呼ばれるオブジェクトを作成したいと思います。次に、フィールドにいくつかの値を割り当ててコンソールに表示し、このすべてが正しく動作することを確認します。iOSオブジェクトを作成してください
Note.h
#import <Foundation/Foundation.h>
@interface Note : NSObject
{
NSNumber *position;
NSString *syllable;
}
@property(nonatomic, retain)NSNumber *position;
@property(nonatomic, retain)NSString *syllable;
@end
Note.m
#import "Note.h"
@implementation Note
@dynamic position;
@dynamic syllable;
@end
この後、別のクラスでフィールドに値を割り当てたいと思います。
-(void) configNote:(Note*)not
{
not = [Note alloc];
[not setPosition:[NSNumber numberWithInt:2]];
[not setSyllable:@"Twin-"];
}
.....
Note *note;
[self configNote:note];
NSLog(@" pos : %d syl : %@ ",[[note position] integerValue],[note syllable]);
私の代わりに@dynamic
の@synthesize
を使用しようとしましたが、まだ何も変わりません。エラーの理由は次のとおりです。-[Note setPosition:]: unrecognized selector sent to instance 0x733d060
-initを上書きする必要はありませんが、基本的に正しいです。問題のドメインがこれを禁じていない限り、プロパティのデフォルト値nilを受け入れても問題ありません。 –