ここでバラバラにすることがたくさんあります。まず第一に、宣言するほとんどすべてのクラスはから継承する必要がありますNSObject
。
@interface MainClass : NSObject {
@property
インスタンス変数を作成するには、を使用する必要が@synthesize
あります。実行しようとしているようにiVarを割り当てないでください。次のように書く方がよいでしょう。
@interface MainClass : NSObject
@property(nonatomic, retain) CustomClass *test1;
@end
@implementation MainClass
@synthesize test1;
// only if you're not using ARC
-(void)dealloc {
[test1 release];
[super dealloc];
}
@end
例)test1.myownerのように?またはtest1<-self?またはtest1/selfなど。
これらはすべて間違っています。test1からMainClassのインスタンスにアクセスする場合は、そのクラスでインスタンス変数を宣言し、そのインスタンス変数に「self
」を設定する必要があります。MainClass
インスタンスが1つしかない場合は、シングルトンとして実装することをお勧めします。