由NSObject学到的一点基本知识

由NSObject学到的一点基本知识,第1张

概述好久不看OC代码,今天看代码追到NSObject里的时候忽然发现retainCount是在@protocol NSObject里,而不是在NSObject类里(以前真是大意,这基本的东西几年都没有注意到),protocol里还有@property其他内容,就比较奇怪retainCount的定义是在哪,@property表示什么,网上查了一下, 1.头文件中@property obj myObj;

好久不看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学到的一点基本知识所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1050957.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-25
下一篇 2022-05-25

发表评论

登录后才能评论

评论列表(0条)

保存