美文网首页
iOS开发,一些关键字的理解

iOS开发,一些关键字的理解

作者: 狂奔的蜗牛_ | 来源:发表于2020-09-30 14:05 被阅读0次

    1-Static

    在常用的iOS开发中,static一般有俩方面的作用:修饰局部变量和全局变量

    1-1:修饰局部变量

    1-1-1:让局部变量只初始化一次;

    1-1-2:局部变量在程序中只有一份内存;

    1-1-3:并不会改变局部变量的作用域,仅仅是改变了局部变量的生命周期(直到程序结束,这个局部变量才会销毁)。

    1-2:修饰全局变量

     C语言中的全局变量,任何地方都可以访问。如果想在某个文件中获取全局变量的值,只需要在全局变量前用extern修饰即可,extern是引用变量,且引用变量的值从当前文件到其他文件中查找。因为iOS开发所用的OC语言是基于C语言的,全局变量的作用在iOS中是一样的。

    1-2-1:全局变量的作用域仅限于当前文件,不能通过extern来引用。

    这个有一个很好的好处就是:即使你在其他地方声明了一样的全局变量,用static修饰后就不会编译报错。

    2-Const

    通过const修饰的变量,在开发中不能进行修改,相当于常量,并且const只修饰其右边变量的值,且该值在开发中不能修改。

    const修饰值

    而宏定义修饰的变量在开发中也不能修改,也是相当于常量。但是苹果官方推进的写法是用const修饰而不是宏定义,是因为全局变量内存中只有一份,而宏定义,在项目中使用的,会有多个临时的内存(直到程序结束)。并且为了防止定义的全局变量被其他文件引用,经常是用static和const联合使用,例如:

    static  类型   const   常量名  = 初始化值

    static和const联合使用的例子

    相关文章

      网友评论

          本文标题:iOS开发,一些关键字的理解

          本文链接:https://www.haomeiwen.com/subject/efpfuktx.html