-1 c++ variables function global-variables
#include <iostream>
using namespace std;
void lemo(){
int shamble;
}
int main(){
lemo();
shamble= 2;
cout<<shamble;
return 0;
}
Run Code Online (Sandbox Code Playgroud)
我想要的只是从其他函数调用变量。执行后控制台会说:
'shamble' was not declared in this scope
对于这个问题我能做什么呢?
在其他文件和函数中使用变量和对象列表。
你的编译器是正确的。shamble未在的范围内声明main。就目前情况而言,你的lemo函数什么也不做。它声明一个未使用的局部变量,然后退出。
您也可以编写以下内容,它实际上会编译。
#include <iostream>
int main() {
int shamble = 2;
std::cout << shamble;
return 0;
}
Run Code Online (Sandbox Code Playgroud)
如果您希望一个变量可用于多个函数,可以将其声明为“全局”,但不要这样做。这很快就会导致代码难以推理和排除故障。
相反,您应该通过参数和返回值将信息从一个函数传递到另一个函数。或者您可能希望将该持久状态封装到对象中。