在头文件中使用 C++ 'using' 关键字是错误的吗?

2022-01-14 00:00:00 namespaces c++

有人告诉我,在头文件中包含使用命名空间 ns123"很糟糕,但我不记得给出的原因是什么.这实际上是一件坏事吗?为什么?

I've been told it's bad to have "using namespace ns123" in a header file, but I can't remember what the reason given was. Is it in fact a bad thing to do, and why?

推荐答案

一般来说,这是一种不好的做法,因为它违背了命名空间的目的.通过在标头中定义,您不会对 using 声明的范围进行严格控制,这意味着您可能会在意想不到的地方遇到名称冲突.

It's a bad practice, in general, because it defeats the purpose of namespaces. By defining in a header you're not enforcing strict control over the scope of the using declaration, meaning that you can run into name clashes in unexpected places.

相关文章