Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/59.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
我如何正确使用;使用名称空间foo?“; 我对C++中的命名空间X略微感到困惑。为什么在这种情况下是不正确的?“使用名称空间”是否仅适用于我们正在包含的其他文件 #include <iostream> using namespace A; namespace A { void print() { std::cout << "From namespace A" << std::endl; } } namespace B { void printB() { std::cout << "From namespace B" << std::endl; } } int main() { print(); printB(); } #包括 使用名称空间A; 名称空间A{ 作废打印(){ std::cout_C++_Namespaces - Fatal编程技术网

我如何正确使用;使用名称空间foo?“; 我对C++中的命名空间X略微感到困惑。为什么在这种情况下是不正确的?“使用名称空间”是否仅适用于我们正在包含的其他文件 #include <iostream> using namespace A; namespace A { void print() { std::cout << "From namespace A" << std::endl; } } namespace B { void printB() { std::cout << "From namespace B" << std::endl; } } int main() { print(); printB(); } #包括 使用名称空间A; 名称空间A{ 作废打印(){ std::cout

我如何正确使用;使用名称空间foo?“; 我对C++中的命名空间X略微感到困惑。为什么在这种情况下是不正确的?“使用名称空间”是否仅适用于我们正在包含的其他文件 #include <iostream> using namespace A; namespace A { void print() { std::cout << "From namespace A" << std::endl; } } namespace B { void printB() { std::cout << "From namespace B" << std::endl; } } int main() { print(); printB(); } #包括 使用名称空间A; 名称空间A{ 作废打印(){ std::cout,c++,namespaces,C++,Namespaces,使用名称空间将允许您拥有两个名为print的函数。您可以将它们用作A::print()和B::print(),而不必重命名其中一个printB(),因为错误消息告诉您这些函数不在当前范围内声明。 使用未指定命名空间调用的所有内容都被视为在全局命名空间中找到,如::print,::printB 您需要使用命名空间作用域运算符(:),如下所示: A::print(); B::printB(); 或使用语句的: using A::print; using B::printB; 相关/重复:@Na

使用名称空间将允许您拥有两个名为print的函数。您可以将它们用作
A::print()
B::print()
,而不必重命名其中一个
printB()

,因为错误消息告诉您这些函数不在当前范围内声明。
使用未指定命名空间调用的所有内容都被视为在全局命名空间中找到,如
::print
::printB

您需要使用命名空间作用域运算符(
),如下所示:

A::print();
B::printB(); 
或使用语句的

using A::print;
using B::printB;

相关/重复:@NathanOliver其实不是同一个问题