大佬教程收集整理的这篇文章主要介绍了objective-c – Objective C – 自定义@synthesize?,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
例如:
@interface @property (nonatomic,retain) MyObject *object; @end @implementation @lazyInitialize object; @end
然后以某种方式定义@lazyInitialize以生成一个惰性初始化方法
//@lazyInitialize - (id)"property name" { if (!"property name") { "property name" = [[["property name" class] alloc] init]; } return "property name"; }@H_262_2@ @H_502_22@解决方法
或许类似(警告:未经测试的代码):
#define SYNTHESIZE_LAZY_INITIALIZER_FOR_OBjeCT(objectName,objectTypE) \ \ - (objectType *)objectName \ { \ if(!objectName) \ { \ objectName = [[objectType alloc] init]; \ } \ return objectName; \ } \ \ - (void)set##objectName:(objectType *)value \ { \ [value retain]; \ [objectName release]; \ objectName = value; \ }
会工作?我很抱歉我没有时间为您正确测试它,所以请将此作为公平警告,这不是一个快速的复制/粘贴解决方案.对于那个很抱歉.希望它仍然有用! @H_262_2@