读书人

C++作用域的一个简单有关问题

发布时间: 2013-01-23 10:44:49 作者: rapoo

C++作用域的一个简单问题


#include <vector>
#include <iostream>
int main()
{
using namespace std;
vector<int> a;
}

上面那段代码中如果不加 using namespace std; 就会出现错误,为什么?这句代码的意思不就是限定作用域么?
[解决办法]
vector在std作用域里, 你想用vector 必然要using namespace std,或者
using std::vector;
[解决办法]
using namespace std;
指明std域下的类型你可以直接用,而不用指定。否则就需要std::cout std::vector这样来使用
[解决办法]
语法规定。
vector这样的符号,要么using namespace std;全部暴露出来,
要么using std::vector;只暴露一个vector,
要么直接定义变量的时候用full qualified name,即std::vector<int> a;

读书人网 >C++

热点推荐