我想这里的大多数 C++ 程序员都会同意污染全局命名空间是一个坏主意,但是有时这条规则可以被忽略吗?
例如,我有一个需要在特定应用程序中使用的类型 - 我应该这样定义它:
mytypes.h
typedef int MY_TYPE;
foo.cpp
MY_TYPE myType;
或者使用命名空间:
mytypes.h
namespace ns {
typedef int MY_TYPE;
}
foo.cpp
ns::MY_TYPE myType;
...
using namespace ns;
MY_TYPE myType;
你喜欢哪个?有时可以接受使用第一种方法吗?
您可以在单独的命名空间中定义您的类型,并使用
using ns::MY_TYPE;
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)