静态变量的返回值
return value for a static variable
我试图使用一个静态变量作为计数器的次数函数已被调用。本质上,我让函数A多次调用函数B,我想让函数B把那个值返回给函数A,这样它就可以显示了。下面是我的测试代码示例(这里main是函数A, showStat是函数B)。期望的输出是012344。提前谢谢。
int showStat()
{
static int statNum;
cout<<statNum; //function check
statNum++;
return statNum;
}
int main()
{
int statNum;
for( int i = 0; i < 5 ; i++)
{
showStat();
}
cout<<statNum;
return 0;
}
在main中,更改
showStat();
statNum = showStat();
你有两个变量叫做statNum。显然,计数发生在showStat()函数内部的静态变量中。但是在main()中,没有读取showStat()的返回值,您只是打印未初始化的局部变量,编译器碰巧给它赋了一个初始值0。
相关文章:
- 如何在不使用临时变量的情况下取消引用返回指针的函数的返回值?
- 如何返回值为NULL的变量指针
- Clang++ 6.0 内存清理器未报告返回值指示条件分支的函数中的未初始化局部变量
- 局部堆栈变量成员的返回值优化
- 是否可以将印刷值返回到变量中
- C 编译器可以执行用于返回值的命名const变量的RVO
- 获取“将返回值分配给新变量”的警告和输出是内存地址
- 从捕获 constexpr 函数返回值的变量中删除 constexpr 会删除编译时计算
- C++ ReSharper - 生成函数返回值/参数类型的变量
- 更改函数中的变量与返回值
- 了解工厂方法和静态变量赋值的返回值优化 (Visual Studio)
- 如何使用const_reference类型来声明一个变量并为其赋值 front() 函数的返回值
- 如何在 c++ 中从函数获取返回值而不为其变量赋值
- 当我调用函数而不将其返回值分配给变量时会发生什么
- 编译器是否在返回成员变量的情况下执行返回值优化
- 在计算函数返回值之前或之后是否销毁了局部变量
- 对象标识符、返回值或变量
- 在 C++ 中传递 int 变量 - 错误检查不返回值
- 自动返回局部变量 x值
- 在C++中使用临时变量时返回值优化(RVO)