#include <iostream>
using namespace std;
int &f( )
{
static int i=2; // i 为静态变量,相当于全局变量,他会保存上一次调用后的值直到再次调用,改变他的值
return ++i;
}
int g()
{
int j=2;
return ++j;
}
int main()
{
int &ri=f(); //函数返回的是一个引用,因此需要一个引用变量来承接
int rj=g();
ri=f();
rj=g();
cout<<"ri="<<ri<<endl<<"rj="<<rj;
return 0;
}
using namespace std;
int &f( )
{
static int i=2; // i 为静态变量,相当于全局变量,他会保存上一次调用后的值直到再次调用,改变他的值
return ++i;
}
int g()
{
int j=2;
return ++j;
}
int main()
{
int &ri=f(); //函数返回的是一个引用,因此需要一个引用变量来承接
int rj=g();
ri=f();
rj=g();
cout<<"ri="<<ri<<endl<<"rj="<<rj;
return 0;
}
C++中静态局部变量的使用与特性解析
本文深入探讨了C++中静态局部变量的定义、作用域、生存期以及与普通局部变量的区别。通过实例展示了如何在函数内部声明静态局部变量,并解释了其在多次函数调用之间的值保持不变的特性。此外,还讨论了静态局部变量在解决特定编程问题时的优势。
534

被折叠的 条评论
为什么被折叠?



