ios开发点滴-model属性不能用new开头的问题

由于现在ios版本需要用到以前android项目的那套服务,那么,android那边的model也得照搬过来,但是在移植的过程中发现个问题,比如说一个属性的名字为newPasswd,在ios这边,如果使用了ARC,model 的字段(属性)名称还叫newPasswd的话,编译就会不通过,出现以下错误:

error: property's synthesized getter follows Cocoa naming convention for returning 'owned' objects
/Users/senyang/Documents/work/project/../xxxx.h:15:38: note: property declared here
@property (nonatomic,copy) NSString *newPasswd;


出现这个错误有两种解决办法:

1.改掉newPasswd这个属性的名称,变成其他的只要不是new开头的就行,错误消除,但是这样在进行json自动转化的时候会出错,所以这种方式我不能使用(也许有其他的什么映射的方法解决这个问题,为了时间关系,我这里暂时不做深究);

2.在@property声明属性的时候重新定义它的Getter方法:

@property (nonatomic,copy,getter = theNewPasswd) NSString *newPasswd;

编译通过,只不过使用Getter方法的时候注意下

最后附上stackoverflow的问题解决传送门http://stackoverflow.com/questions/6327448/semantic-issue-propertys-synthesized-getter-follows-cocoa-naming-convention-fo



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值