关闭

今天发现的一个arc命名的问题

标签: iOSARC
1125人阅读 评论(0) 收藏 举报
分类:

今天在写代码,发现了一个arc的命名原则,就是不能以new开头.例如NSUrl *newUrl; 这样也是不行的,会报错Property's synthesized getter follows Cocoa naming convention for returning 'owned' objects


所以,要改为不是new,开头的命名,才可以通过.

Property's synthesized getter follows Cocoa naming convention for returning 'owned' objects
这个出处:@synthesize newPwd;
违犯了ARC命名规则,成员变量不要以new作为前缀。
关于ARC规则,请参考http://mobile.51cto.com/iphone-313122.htm 
基本的ARC使用规则:
    1。代码中不能使用retain, release, retain, autorelease
    2。不重载dealloc(如果是释放对象内存以外的处理,是可以重载该函数的,但是不能调用[super dealloc])
    3。不能使用NSAllocateObject, NSDeallocateObject
    4。不能在C结构体中使用对象指针
    5。id与void *间的如果cast时需要用特定的方法(__bridge关键字)
    6 。不能使用NSAutoReleasePool、而需要@autoreleasepool块
    7 。不能使用“new”开始的属性名称 (如果使用会有下面的编译错误”Property’s synthesized getter follows Cocoa naming convention for returning ‘owned’ objects”)


这是一篇参考文章:总结:升级到xcode4.2 iOS sdk 5.0旧版工程编译后出现的警告解决办法

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:374290次
    • 积分:5085
    • 等级:
    • 排名:第5484名
    • 原创:144篇
    • 转载:80篇
    • 译文:0篇
    • 评论:30条
    最新评论