【发布时间】:2012-01-02 21:36:16
【问题描述】:
在命名空间中包装头文件和 cpp 文件内容或仅包装头文件内容然后在 cpp 文件中执行 using namespace 有什么区别?
我所说的差异是指任何可能导致问题或我需要注意的任何排序性能损失或稍微不同的语义。
例子:
// header
namespace X
{
class Foo
{
public:
void TheFunc();
};
}
// cpp
namespace X
{
void Foo::TheFunc()
{
return;
}
}
VS
// header
namespace X
{
class Foo
{
public:
void TheFunc();
};
}
// cpp
using namespace X;
{
void Foo::TheFunc()
{
return;
}
}
如果没有区别,首选形式是什么?为什么?
【问题讨论】:
标签: c++ namespaces