存储期
概念
存储期:变量的属性,变量的生命期,是从变量的时间角度进行分析的,有别于作用域。
分为动态存储区和静态存储区。
静态存储区主要存储全局变量和静态变量,而静态存储区存放的有:函数形参,函数中定义的变量,函数调用时的现场保护和返回地址等。
关键字
static 给予变量静态存储属性,因而在编译的时候完成赋值,只赋值一次,在程序销毁前不会被释放。
extern 声明外部变量,可用于扩展全局变量的作用域,一个较为常用的方式是
// file1
int a; //<a为全局变量
// file2
extern int a; //可引用到file1的全局变量,假设编译成一个程序
explicit 仅能用于修饰只有一个参数的类构造函数, 它的作用是表明该构造函数是显示的, 而非隐式的;修饰的一般是单参数的构造函数
volatile 是一种限定符用来声明一个对象在程序中可以被语句外的东西修改,比如操作系统、硬件或并发执行线程