静态生存期和动态生存期

静态生存期

定义:

如果某一个对象的生存期和程序的运行的生存期一样,则这个对象具有静态生存期。

关键字:static

特点

静态变量不会随着每次函数的调用产生一个新的副本,也不会随着函数返回而失效。第n次调用函数时,静态变量的值为第n-1次调用的静态变量的值,依次类推!!!

也就是说静态变量 第一次赋值有效,也只能赋一次值。


写法:static int i


(类推 还有其他的存储类型 : auto ,extern,register )

动态生存期

 定义:局部生存期对象生于声明点,结束于声明所在块执行完毕之时。


全局变量为静态变量

局部变量一般为动态的

 extern变量可用于文件外

static 变量只能用于本文件,不可外引



你可能感兴趣的:(c++基础知识)