向 std
命名空间添加类型是否可以接受.比如我想要一个TCHAR友好的字符串,那么下面的可以接受吗?
Is it acceptable to add types to the std
namespace. For example, I want a TCHAR-friendly string, so is the following acceptable?
#include <string>
namespace std
{
typedef basic_string<TCHAR> tstring;
}
还是应该使用自己的命名空间?
Or should I use my own namespace?
不...命名空间的一部分目的是防止升级时的名称冲突.
No ... part of the point of a namespace is to prevent name collisions on upgrade.
如果您向 std 命名空间添加内容,那么如果库的下一个版本决定添加具有相同名称的内容,您的代码可能会中断.
If you add things to the std namespace, then your code might break with the next release of the library if they decide to add something with the same name.
这篇关于将类型添加到 std 命名空间的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!