美文网首页
const & static & volatile

const & static & volatile

作者: March_Cullen | 来源:发表于2017-03-06 15:44 被阅读0次

    1.const,static,volatile修饰变量代表什么意思?

    • const:修饰的变量为常量,常量是不允许修改的;

    • static:修饰的变量为静态变量,在内存中只被创建一次,如UITableView中创建cell的代理方法中会用到静态变量标识cell;

      static NSString *cellId = @“XXcell”;

    • volatile:定义变量为一个共享变量。

    2.static的作用

    • 1.在类中static修饰的变量属于整个类所有,对类的所有对象共享一份;

    • 2.在类中static修饰的方法属于整个类所有,该方法不能通过this来访问,只能通过类访问;

    • 3.在函数体中static修饰的变量在内存中只被分配一次,多次调用函数体都是调用内存中的同一份。

    3.关键字static的作用

    • 函数体内static变量的作用范围为该函数体,不同于auto变量,该变量的内存只被分配一次,因此其值在下次调用时仍维持上次的值;

    • 在模块内的static全局变量可以被模块内所用函数访问,但不能被模块外其它函数访问;

    • 在模块内的static函数只可被这一模块内的其它函数调用,这个函数的使用范围被限制在声明它的模块内;

    • 在类中的static成员变量属于整个类所拥有,对类的所有对象只有一份拷贝;

    • 在类中的static成员函数属于整个类所拥有,这个函数不接收this指针,因而只能访问类的static成员变量。

    相关文章

      网友评论

          本文标题:const & static & volatile

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