我正在使用MinGW 4.5.2并且我想使用tr1命名空间中的unordered_map,而不是通过传递-std = c ++ 0x来启用的std命名空间中的unordered_map。我确信这可以完成,因为有两个unordered_map文件,一个在tr1子目录中。
澄清: 我也用msvc10编译这个代码,它在两个命名空间中都支持unordered_map,但只支持在一个位置。所以我想让两个编译器尽可能地进行编译。
答案 0 :(得分:7)
加入<tr1/unordered_map>
并使用std::tr1::unordered_map<>
。
编辑:
我也在用msvc10编译这个代码,并且它在两个命名空间中都支持它,但只在一个位置支持它。所以我想让两个编译器尽可能地进行编译。
要使用两个编译器进行编译,您可以使用以下内容:
#if defined(_MSC_VER) && _MSC_VER >= 1600
# include <unordered_map>
#else
# include <tr1/unordered_map>
#endif
答案 1 :(得分:5)
这不像
那么简单#include <tr1/unordered_map>