我正在写一个小型图书馆。使用标准库的我的类,函数和其他声明都在头文件中。我知道将“使用命名空间”放入标题是一个不好的实践。我可以将我的代码放在单独的命名空间中,然后将“using namespace”放入其中吗? 像这样:
// header.h
namespace My
{
using namespace std;
// declarations
}
会不会好?
答案 0 :(得分:3)
不要这样做!
只需使用完全限定名称或使用您要使用的特定符号的声明
有了这个,您最终将导入名称空间std
中的整个My
名称空间的内容,实质上是头文件header.h
。基本上,它会给你带来大量未使用符号的命名空间污染,并且还会增加包含此标题的每个翻译单元的编译时间。
答案 1 :(得分:1)
你可能会这样做,但这不是一个好主意,因为这会导致名字模糊。