代码之家  ›  专栏  ›  技术社区  ›  flashnik

是否值得在生产中使用std::tr1?

  •  6
  • flashnik  · 技术社区  · 16 年前

    例如,现在我使用 stdext::hash_map . TR1定义 std::tr1::unordered_map unordered_map stdext::哈希映射

    5 回复  |  直到 16 年前
        1
  •  7
  •   Jerry Coffin    16 年前

    我的建议是为包含您使用的TR1项的命名空间使用别名。这样,当您的编译器支持TR1版本时,您就可以从使用TR1版本“移动”到标准版本。

    namespace cpp0x = std::tr1;
    
    cpp0x::unordered_map<std::string, int> mymap;
    

    namespace cpp0x = std;
    

    剩下的你就不用管了。

        2
  •  9
  •   Jan    16 年前

    是的,tr1中的所有内容都将 接受std:,但他们会留下来 也在tr1中。所以你的密码 完成了。

    here :

    但值得注意的是,现在愿意支持tr1的编译器供应商很可能不会从你的脚下挖墙角,而是为你提供某种转换方法。

        3
  •  5
  •   anon anon    16 年前

    unordered_map 将采用新标准, hash_map 不会的。请注意 tr1

        4
  •  2
  •   Michael Aaron Safyan    16 年前

    将在C++0x中添加的绝大多数库代码已经存在了很长一段时间了 Boost C++ Libraries boost::unordered_map

        5
  •  1
  •   Matthieu M.    16 年前

    对于 tr1::unordered_map 请注意,Hash映射有很多种可能的实现,标准选择的实现非常经典。。。但对于你的特定任务来说,这可能不是表现最好的。

    推荐文章