加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

Objective-C:什么是私有什么不是?

发布时间:2020-12-16 10:38:47 所属栏目:百科 来源:网络整理
导读:为什么人们在使用 @interface ViewController : UIViewController {@private UIButton* button_;} 公共标题中的@private声明?在实现中声明变量会产生相同的结果,不是吗?我觉得很奇怪,我认为公共标题应该只包含真正的公众成员.如何处理受保护的成员? @impl
为什么人们在使用

@interface ViewController : UIViewController 
{
@private
    UIButton* button_;
}

公共标题中的@private声明?在实现中声明变量会产生相同的结果,不是吗?我觉得很奇怪,我认为公共标题应该只包含真正的公众成员.如何处理受保护的成员?

@implementation ViewController
    UIButton* button_;
@end

我所知道的唯一区别是这个变量只在当前编译单元内可见(.m文件,对吧?)

方法是否也适用?我可以通过适当的方法排序或转发声明来编译.为什么人们关心为私有方法声明类别?仅用于测试目的?

解决方法

@implementation块中的变量声明将创建一个全局变量,而不是实例变量.实例变量需要定义为@interface的一部分.

虽然您可以通过类别或扩展创建额外的@interface块,但它只能包含方法声明,而不能包含实例变量.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读