在我的函数sumofrange
中,我决定输出一个未声明的变量来学习C++中不同的编译器错误。令我惊讶的是,time
似乎输出1,即使它没有在任何地方声明。一个未申报的变量如何输出一个值
#include <iostream>
#include <cmath>
using namespace std;
int sumOfrange(int lower, int upper){
cout<<time<<endl;
return ((((pow(upper,2)) + upper) - ((pow(lower,2)) + lower))/2);
}
int main(){
cout<<sumOfrange(7,100)<<endl;
return 0;
}
这就是为什么命名空间很重要,而'使用命名空间标准;'有时是危险的。 – ForceBru
你应该阅读[this](https://stackoverflow.com/questions/1452721/why-is-using-namespace-std-considered-bad-practice) – NathanOliver
顺便说一句,没有这样的事情作为“未申报的变量”。如果它是未声明的,你不能使用它 – user463035818