本地静态对象是在函数第一次被调用时被创建的。当函数第一次被调用时,程序会为该对象分配内存并进行初始化,然后将对象的地址保存在静态存储区中。
以下是一个代码示例:
#include
void myFunction() {
static int myStaticVariable = 0;
myStaticVariable++;
std::cout << "myStaticVariable: " << myStaticVariable << std::endl;
}
int main() {
myFunction(); // 第一次调用函数,创建本地静态对象
myFunction(); // 再次调用函数,继续使用同一个本地静态对象
return 0;
}
输出结果:
myStaticVariable: 1
myStaticVariable: 2
通过在函数内部使用static
关键字声明变量,可以使变量成为本地静态对象。在上述示例中,myStaticVariable
是一个本地静态对象,它只会在第一次调用myFunction()
时被创建,并且在后续的函数调用中保持其值。
上一篇:本地静态对象的销毁