在C++中,存储区域可以分为:堆,栈,常数区,静态区,代码区;
堆:
栈:局部变量(定义它的函数内有效)
常数区:
静态区:全局变量(整个程序文件中有效),静态全局变量(定义它的文件中有效),静态局部变量(定义它的函数内有效,整个程序文件存在)
代码区:
全局变量:存储在静态存储区,整个程序运行区间都存在;初始化:如果没有初始化,那么自动初始化为0;作用域:整个程序运行期间。
全局静态变量---在全局变量前面加static,存储在静态存储区,没有初始化则自动初始化为0,作用域是定义它的文件内有效。
局部静态变量:存储在静态存储区,作用域也是定义它的函数内部,但是离开作用域后该变量没有销毁,直到程序运行结束才销毁。
静态函数:在函数前面加static关键字之后即是静态函数,同样只在定义它的文件内有效。