1.const: 被const修饰的变量是只读的(变量->只读变量)
![](https://i-blog.csdnimg.cn/blog_migrate/c0bf162f9338cc9c6be2e34462aba957.webp?x-image-process=image/format,png)
未修饰前 (没什么可说的)
![](https://i-blog.csdnimg.cn/blog_migrate/edc0399c4e69f9b2c84e47cba3c1fef0.webp?x-image-process=image/format,png)
被const修饰之后
![](https://i-blog.csdnimg.cn/blog_migrate/bb2104daf28a7911a6f5ec27eb8e987c.webp?x-image-process=image/format,png)
笔试题
2.static的作用:定义所修饰的对象只能在当前文件访问,不能同过extern来引用
默认情况下的全局变量 作用域是整个程序(可以通过extern来引用) 被static修饰后仅限于当前文件来引用 其他文件不能通过extern来引用
![](https://i-blog.csdnimg.cn/blog_migrate/c84103ef8ea72fa36bd4829a733d1e28.webp?x-image-process=image/format,png)
在car这个类中定义一个全局变量 num
![](https://i-blog.csdnimg.cn/blog_migrate/d20f2aebb1c23fe47ca7f785b505c3a5.webp?x-image-process=image/format,png)
引用全局变量
![](https://i-blog.csdnimg.cn/blog_migrate/91211ab9848850db0834dfe7b2867bce.webp?x-image-process=image/format,png)
引用成功
在全局变量前面加上static的后果运行后会报错
![](https://i-blog.csdnimg.cn/blog_migrate/80e910a2e08a8ff3273db9b2707f1143.webp?x-image-process=image/format,png)
报错截图
3. 开发中static与const的联合使用 定义一个只能在当前文件访问的全局常量
static 类型 const 常量名 = 初始化值
例:staticNSString*constcell =@"ABC";
4.开发中static与const的联合使用 定义一个整个项目都能访问的全局常量
1.新建两个文件(1个.h 1个.m)例如(LKYConst)
2.在.m文件中定义常量并且赋值,在.h文件中引用该常量
![](https://i-blog.csdnimg.cn/blog_migrate/c40ec4be4de4b5de4f336413b09c67ab.webp?x-image-process=image/format,png)
.h文件 引用该常量
![](https://i-blog.csdnimg.cn/blog_migrate/95704f804f45ccae6b53b5fa1a950d47.webp?x-image-process=image/format,png)
.m文件中定义常量并且赋值
![](https://i-blog.csdnimg.cn/blog_migrate/e4771c0fedaa18c466a60fbc6c93b17a.webp?x-image-process=image/format,png)
pch文件中包含此头文件
![](https://i-blog.csdnimg.cn/blog_migrate/f93d72f514403ac9e3b10927ca5bd5d7.webp?x-image-process=image/format,png)
文/阳光暖暖的_(简书作者)
原文链接:http://www.jianshu.com/p/2dfbac8bff0d
著作权归作者所有,转载请联系作者获得授权,并标注“简书作者”。
原文链接:http://www.jianshu.com/p/2dfbac8bff0d
著作权归作者所有,转载请联系作者获得授权,并标注“简书作者”。