以下内容参考百度知道:https://zhidao.baidu.com/question/15410807.html
-
C++标准中引入命名空间的概念,是为了解决不同模块或者函数库中相同标识符冲突的问题。有了命名空间的概念。标识符就被限制在特定的范围(函数)内,不会引起命名冲突。
-
std 是一个命名空间,不同的命名空间可以有相同的类名被定义。
-
using namespace std; 这条语句是为了告诉编译程序使用std命名空间。C++标准程序库中的所有标识符都被定义于一个名为std的命名空间中。
-
namespace是指标识符的各种可见范围。命名空间用关键字namespace 来定义。命名空间是C++的一种机制,用来把单个标识符下的大量有逻辑联系的程序实体组合到一起。此标识符作为此组群的名字。
-
如果不用这句指明的话就要用 std::string (string是std空间中定义的也可以在全局空间中定义,只要名字空间不一样即可)
-
比如A B两个班都有叫张三的人,你要使用A班的张三,必然要先指名是A班这个名字空间(namespace),然后你对张三的所有命令才能达到你的预想,不会叫错人。如果你用#include<iostream.h>就不需写这句话(旧标准)。
-
但是如果用#include就必须要写。