1. 说说静态变量什么时候初始化?⭐⭐⭐

  2. 说说 static关键字的作用⭐⭐⭐⭐⭐

  3. 为什么静态成员函数不能访问非静态成员⭐⭐⭐⭐⭐

  4. 静态成员函数与普通成员函数的区别⭐⭐⭐⭐⭐

  5. 说说volatile和mutable⭐⭐⭐⭐⭐

  6. 说说volatile的应用⭐⭐⭐⭐⭐

  7. 说说原子操作⭐⭐⭐⭐

  8. 说说引用和指针的区别⭐⭐⭐⭐⭐

  9. 说说左值和右值⭐⭐⭐

  10. 说说右值引用的作用⭐⭐⭐⭐⭐

  11. 说说移动语义的原理⭐⭐⭐⭐⭐

  12. 多线程编程修改全局变量需要注意什么⭐⭐⭐⭐⭐

=========================================================================================================

  • 本专栏适合于C/C++已经入门的学生或人士,有一定的编程基础。
  • 本专栏适合于互联网C++软件开发、嵌入式软件求职的学生或人士。
  • 本专栏针对面试题答案进行了优化,尽量做到好记、言简意赅。这才是一份面试题总结的正确打开方式。这样才方便背诵
  • 针对于非科班同学,建议学习本人专刊文章《蒋豆芽的秋招打怪之旅》,该专刊文章对每一个知识点进行了详细解析。
  • 如专栏内容有错漏,欢迎在评论区指出或私聊我更改,一起学习,共同进步。
  • 相信大家都有着高尚的灵魂,请尊重我的知识产权,未经允许严禁各类机构和个人转载、传阅本专栏的内容。

=========================================================================================================

  1. 说说静态变量什么时候初始化?⭐⭐⭐

    对于C语言的全局和静态变量,初始化发生在任何代码执行之前,属于编译期初始化。

    而C++标准规定:全局或静态对象当且仅当对象首次用到时才进行构造。

  2. 说说 static关键字的作用⭐⭐⭐⭐⭐

    1. 定义静态函数或全局变量:当我们同时编译多个文件时,在函数返回类型或全局变量前加上static关键字,函数或全局变量即被定义为静态函数或静态全局变量。静态函数或静态全局变量只能在本源文件中使用。这就是static的隐藏属性

    2. static 的第二个作用是保持变量内容的持久:在变量前面加上static关键字。初始化的静态变量会在数据段分配内存,未初始化的静态变量会在BSS段分配内存。直到程序结束,静态变量始终会维持前值。只不过全局静态变量和局部静态变量的作用域不一样。

    3. static 的第三个作用是默认初始化为 0:全局变量也具备这一属性,因为全局变量也存储在静态数据区。在静态数据区,内存中所有的字节默认值都是 0x00

      最后对 static 的三条基本作用做一句话总结。首先 static 的最主要功能是隐藏,其次因为 static 变量存放在静态存储区,所以它具备持久性和默认值0。

    4. 在c++中,static关键字可以用于定义类中的静态成员变量:使用静态数据成员,它既可以被当成全局变量那样去存储,但又被隐