在 C++ 中,在 main 中声明的任何变量都将在整个 main 中可用,对吗?我的意思是如果变量是在 try 循环中声明的,它们是否仍然可以在整个 main 中访问? 因为我在 main 的 try 循环中声明了几个变量,但是如果我在 try 循环之外的 main 的任何其他部分使用它们,我会得到一个“未在此范围内声明”的错误
很遗憾,我不能发布我的实际代码,但这基本上就是我正在做的
int main()
{
try
{
int number = 0;
}
catch (...)
{
cout <<"Error";
}
number ++;
cout <<number;
return 0;
}
我基本上会在第 13 行和第 14 行收到一个错误,说 number 没有在此范围内声明。
最佳答案
number
的范围仅限于 try
block 。将此声明拉出到 main
范围以访问 try
block 之后的变量:
int main()
{
int number = 0;
try
{
// do something...
}
catch (...)
{
cout <<"Error";
}
number ++;
cout <<number;
return 0;
}
关于c++ - C++ 中的变量作用域?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8030366/