小胖说事28------iOS中extern,static和const区别和用法
2015-07-15 11:21
344 查看
通俗的讲:
extern字段使用的时候,声明的变量为全局变量,都可以调用,也有这样一种比较狭义的说法:extern可以扩展一个类中的变量到另一个类中;
static声明的变量是静态变量,变量值改变过之后,保存这次改变,每次使用的时候都要读取一遍值;
const声明过得变量值是不可改变的,是readonly的属性,不可以改变变量的值。
具体用法:
1.static的用法:static NSString *str = @"哈哈";
2.const的用法:NSString *const str = @"哈哈";
3.extern的用法:在A.h里边声明一个变量extern NSString *str = @"123"; 这样就声明了一个全局变量,在B.h里边同样写入代码extern NSString *str;然后再B.m里边直接打印str就可以打印出123来,使用的时候不需要导入A.h文件头,也不区分类是否已经创建等等因素。
希望对大家有所帮助,以后写代码的时候可以更加高大上一些,也是一种技巧。
extern字段使用的时候,声明的变量为全局变量,都可以调用,也有这样一种比较狭义的说法:extern可以扩展一个类中的变量到另一个类中;
static声明的变量是静态变量,变量值改变过之后,保存这次改变,每次使用的时候都要读取一遍值;
const声明过得变量值是不可改变的,是readonly的属性,不可以改变变量的值。
具体用法:
1.static的用法:static NSString *str = @"哈哈";
2.const的用法:NSString *const str = @"哈哈";
3.extern的用法:在A.h里边声明一个变量extern NSString *str = @"123"; 这样就声明了一个全局变量,在B.h里边同样写入代码extern NSString *str;然后再B.m里边直接打印str就可以打印出123来,使用的时候不需要导入A.h文件头,也不区分类是否已经创建等等因素。
希望对大家有所帮助,以后写代码的时候可以更加高大上一些,也是一种技巧。
相关文章推荐
- 通过keychaini获取ios唯一标识
- 简单仿照主流新闻客户端界面一(标题栏按钮弹性按钮切换
- iOS 7、8 中的定位服务
- iOS多线程编程指南(附录)
- [RSA加解密]IOS 客户端使用 RSA加解密问题
- iOS多线程编程指南(四)线程同步
- iOS多线程编程指南(二)线程管理
- iOS多线程编程指南(一)关于多线程编程
- iOS多线程编程指南-目录
- iOS 倒计时方法
- XMPP之ios即时通讯客户端开发-mac上搭建openfire服务器(二)
- iOS开发-键盘消失的几种方式
- iOS沙盒目录结构解析
- js 通过浏览器直接打开应用程序(IOS,Android)
- ios xcode6 创建分类和延展
- iOS后台运行
- 在ios开发中,ARC的循环引用问题和解决办法
- iOS开发学习之动画实现
- IOS开发常用的三方库以及Xcode常用插件
- ios 避免循环引用