有人可以在 C++ 文件的顶部澄清这意味着什么吗?
using std::cout;
谢谢
这意味着从那时起在代码中,当我们键入时,cout
我们的意思是std::cout
它将cout
命名空间中定义的std
注入到当前命名空间中。我们使用它,using namespace std
因为它更受控制;并非每个std
名称都会被注入此语句。
这是一个命名空间声明。允许您输入cout
而不是std::cout
并且通常首选而不是using namespace std;
该using
声明将名称cout
作为std::cout
.
它与“命名空间”概念有关。为了避免名称冲突(变量、类等在不同文件中具有相同名称),您可以将代码放入命名空间,如下所示:
namespace exampleNS
{
class A { ... }
void aFunction (...){ ... }
}
当您在 namespace 内部时exampleNS
,您可以仅使用名称来引用类A
,但从外部您需要编写exampleNS::A
.
如果您想省去在您经常使用的名称之前添加名称空间的冗长(并且您确定不会与当前名称空间中的任何内容发生冲突),您可以编写该using
语句。
大多数标准库实用程序都在内部namespace std
,例如变量cout
和cin
. 在您的情况下,您的代码不在命名空间内std
:您可以选择std::cout
每次要打印内容时编写,或者using std::cout
在开始时编写,然后像cout
在代码中一样使用它。
using A::B
命名空间在哪里A
,意味着可访问性B
不需要为其派生的前缀。请注意,这仅与放置它的范围有关。如果放置在较低级别的范围内,它的功能不会对外部范围产生任何影响。