本文介绍: IBAction和IBOutlet:IB指的是Interface Builder,两个均被用作关键字IBOutletCollection是始终是NSArray属性,且秩序不一定得到保证@property (nonatomic, strong) IBOutletCollection(UIButton) NSArray *buttons;-(IBAction) show:(id)sender返回IBAction类型。Method name of an active verb, describing

IBAction和IBOutlet:IB指的是Interface Builder,两个均被用作关键字

IBOutletCollection是始终是NSArray属性,且秩序不一定得到保证
@property (nonatomic, strong) IBOutletCollection(UIButton) NSArray *buttons;

-(IBAction) show:(id)sender

Const ,extern static
extern NSString *const SUCCESS_COLOR;
一:const
1.const只修饰右边变量, 变量只读变量变量属性是外连接
2.const和宏的区别
  (1)宏是预编译执行,const是编译执行.
  (2)宏不会做编译检查,它只是做替换,因此不会编译报错;const会编译检查,会编译报错.
  (3)宏能定义方法函数,const不能.
  (4)大量使用宏会造成编译时间长久.
  (5)大量使用宏并不会消耗很多内存,宏定义的是常量,常量存放常量去,只生成一份内存,并不像有些人所说的会消耗很多内存!
二.static和extern
1.static作用:
   (1)修饰局部变量
      1)延长局部变量的声明周期,程序结束才销毁
      2)局部变量初始化一次,节省内存
      3)改变作用域
   (2)修饰全局变量
      1)只能在本文件中访问,修改全局变量作用域,生命周期不改变
      2)避免重复定义全局变量
2.extern作用:
    (1)只是用来获取全局变量的值,不能用来定义变量
    (2)工作原理是先在本文件中查找没有全局变量,没有找到的话再去其他文件查找.
三.static和const一起使用
1.防止重复声明全局变量
2.不希望同事无意中修改变量,只允许读取
3.声明一个静态全局只读常量
四.extern与const一起使用
1.在多个文件中经常使用同一个字符常量,用extern和const组合使用
2.一般建一个GlobeConst
_title = title;为什么变量名title,但是值方法里却是_title?
我们值声明一个变量时,编译时系统自动给该变量重新定义起名,并添加该变量的setter 和getter方法,以_title出现在方法中
self.title = title:编写时用self代替下划线,这样访问其属性值,也就是getter方法,_title可以设置获取属性值。
成员变量和属性
①:成员变量默认修饰是用protected修饰。不会自动生成setget方法,需要自己手动代码实现。不能用点语法调用,因为没有setget方法,只能使用->调用
②:属性用”@property“声明,声明后默认生成一个_类型成员变量,同时也会生成setter/getter方法。在调用时使用self.的形式,如果self.表达式出现在等号=左边调用该属性名称setter方法。如:self.name = @“  ”;,给Name赋予值;
如果self.表达式出现在=右边,调用该属性名称的getter方法。如其他 = self.name;此时其他的值为此时的name值
代码中有自定义的存或取方法时,自定义屏蔽自动生成的getter/setter方法
如下代码片段,会出现死循环

原文地址:https://blog.csdn.net/YUANdeboke/article/details/122489308

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任

如若转载,请注明出处:http://www.7code.cn/show_22494.html

如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱suwngjj01@126.com进行投诉反馈,一经查实,立即删除

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注