using的使用
using std::cin; 这就是一个using声明,就像一个普通的声明。以后提到cin时就指的是std里面的。
using namespace std;这就是一个using指令,导入所有std里面的应用。
“一般来说,使用using声明会更安全。因为,using声明只导入指定的名称,如果该名称与局部名称发生冲突,编译器会报错。而using指令导入整个命名空间中的所有成员的名称,包括那些可能根本用不到的名称,如果其中有名称与局部名称发生冲突,则编译器并不会发出任何警告信息,而只是用局部名去自动覆盖命名空间中的同名成员。特别是命名空间的开放性,使得一个命名空间的成员,可能分散在多个地方,程序员难以准确知道,别人到底为该命名空间添加了哪些名称。”
理解为:使用using指令时,如果代码块中有重名的变量,则会用局部变量名覆盖命名空间中的同名成员,而不会报错。
使用using声明时,遇到上述情况,编译器会报错。
重名的变量将使程序员很难区分,引起歧义。故,使用using声明是个不错的方法,况且它仅仅导入需要的成员,必然占用资源较少。
转自:https://blog.csdn.net/qq_37503890/article/details/86924447