我正在尝试对特定成员使用指令using namespace NS
,但编译器似乎并不理解。
这是一个非常简单的代码示例:
namespace NS{
int a;
int b;
}
using namespace NS::a;
int main(){
return 0;
}
Clang编译器使用命名空间NS :: a;
返回错误: 的预期命名空间名称答案 0 :(得分:2)
a
不是命名空间。因此,您只需使用using namespace NS
在全局命名空间中提取命名空间的内容,或使用a
在全局命名空间中仅提取using NS::a
。
答案 1 :(得分:0)
using namespace NS
表示NS
是命名空间,您希望直接访问其范围。因此,您可以直接编写NS::a
而不是a
。
虽然
using namespace NS::a
表示NS
是包含另一个名称空间a
的名称空间,并且您希望能够访问在名称空间a
范围内定义的变量!!!