预测以下C++程序的输出。
#include
using namespace std;
int &fun()
{
static int x = 10;
return x;
}
int main()
{
fun() = 30;
cout << fun();
return 0;
}
(A)编译器错误:函数不能用作左值
(B) 10
(C) 30答案: (C)
说明:当一个函数通过引用返回时,它可以用作左值。由于x是静态变量,因此它在函数调用和初始化行“ static int x = 10;”之间共享。只执行一次。
函数调用fun()= 30,将x修改为30。下一个调用“ cout << fun()”返回修改后的值。
这个问题的测验
想要从精选的最佳视频中学习和练习问题,请查看《基础知识到高级C的C基础课程》。