使用命名空间两次

Uda*_*day 3 c++ namespaces

在c ++中可以两次包含相同的命名空间吗?编译器不会给出任何错误,但无论如何它仍然会影响

谢谢,

编辑:
我的意思

using namespace std;

// . . STUFF
using namespace std;
Run Code Online (Sandbox Code Playgroud)

小智 16

这取决于你所说的'包含'.他说:

using namespace std;    
...    
using namespace std:
Run Code Online (Sandbox Code Playgroud)

没关系 但是说:

namespace X {
   ...
namespace X {
Run Code Online (Sandbox Code Playgroud)

会创建一个名为X :: X的嵌套命名空间,这可能不是你想要的.


Joh*_*ing 8

这种用法很好,如果你正在谈论的话:

文件:foo.h

namespace tools
{
  class Widget
  {
  ...
  };
}
Run Code Online (Sandbox Code Playgroud)

file:bar.h

namespace tools
{
  class Gizmo
  {
  ...
  };
}
Run Code Online (Sandbox Code Playgroud)