在C++中经常可以看到如下的代码:
using namespace std;
今天介绍一下此类句子,这是名称空间的使用。在之前学习到的知识中,在同一个函数中不能够有多个相同的变量名字,但是在C++中可以使用名称空间对变量或者函数做限定,如下:
#include <iostream>
using namespace std;
namespace space1{
int num = 1;
}
namespace space2{
int num = 2;
}
int main(){
using namespace space1;
cout << num << endl;
return 0;
}
在上面的代码中,使用了关键字namespace来创建名称空间,一共有两个名称空间,分别是space1和space2,在这两个名称空间中都存在一个num变量,在使用的时候需要先用using来表明自己使用哪个名称空间中的变量,然后使用的变量就会默认为之前声明的空间中的变量。
若是不想使用using关键字,也可以使用名称空间的名字加以限定,如下:
cout << space2::num << endl;
这样就是使用名称空间space2中的num的意思,同样的道理,using namespace std的意思就是使用系统自带的名称空间std,在std中存在着cout,endl,cin等关键字,所以在使用的时候也是需要名称空间的限定。同样,除了using外还可以通过std的方式使用cout等,如下:
#include <iostream>
int main(){
int num;
std::cin >> num;
std::cout << "你输入的数字是:" << num << std::endl;
return 0;
}
在这种情况下,使用使用endl等就会比较麻烦,读者可以根据自己的需求灵活选择。