第一天学习c++的同学通常对程序中的using namespace std; 或 std:: 感到神秘,想不通还打击学习信心.通常书本上都是以文字来进行一堆解释.下面以一个小例子来说明为什么要using namespace std; 或 std:: .
#include <iostream>
namespace nsp //建立一个名字空间,它的名字叫nsp
{
class string
{
public:
string()
{
std::cout << "Hello World!";
}
};
}
using namespace nsp;
int main(){
string nsp_str;
//如不写using namespace nsp; 则可以这样写nsp::string nsp_str;
return 0;
}
打印结果为:Hello World!
被放在名字空间里的东西要先using namespace 名字空间名,或者通过 名字空间名:: 这样的格式使用.好处是:不同的名字空间中可以有相同变量名,类名,函数名等等而不会冲突起到很好的隔离效果.
希望这个小例子对using namespace std; 或 std::疑惑的同学有所帮助.