好久不看OC代码,今天看代码追到NSObject里的时候忽然发现retainCount是在@protocol NSObject里,而不是在NSObject类里(以前真是大意,这基本的东西几年都没有注意到),protocol里还有@property其他内容,就比较奇怪retainCount的定义是在哪,@property表示什么,网上查了一下,
1.头文件中@property obj myObj;
等效于声明了两个方法
- (obj)myObj;
- (obj)setMyObj:(obj)newObj;
可知@property只是简化了两个协议方法。
2.在实现文件中@synthesize myObj;
等效于在实现文件中实现了两个方法
- (obj)myObj{
return myObj;
}
- (obj)setMyObj:(obj)newObj{
myObj = newObj;
}
我自己测试了一下,如果在实现文件里直接@synthesize myObj;会报错,但是如果实现了一个@property obj myObj;的协议,再在实现文件里@synthesize myObj;就不会报错了,所以猜测,retainCount应该是在NSObject的实现文件里@synthesize retainCount;
总结以上是内存溢出为你收集整理的由NSObject学到的一点基本知识全部内容,希望文章能够帮你解决由NSObject学到的一点基本知识所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)