谷歌::密

我正在为几个平台(Android,iOS以及将来的某些平台甚至某种平台)开发手机游戏。

我试图决定是否使用tr1 :: unordered_map或google :: dense_hash_map从资源管理器中检索纹理(用于使用OpenGL进行后续绑定)。 通常这种情况每秒可能发生几次(每帧N帧,我的游戏运行速度约为60 fps)

注意事项是:

  • 性能(内存和CPU明智)
  • 可移植性
  • 欢迎任何想法或建议。


    http://attractivechaos.wordpress.com/2008/10/07/another-look-at-my-old-benchmark/

    http://attractivechaos.wordpress.com/2008/08/28/comparison-of-hash-table-libraries/


    与STL一起用于标准容器。 它们具有可预测的行为,并且可以在STL算法/迭代器中无缝地使用。 STL还为您提供了一些性能保证。

    这也应该保证可移植性。 大多数编译器都实现了新标准。


    在我开发的C ++项目中,我想知道类似的东西:哪一个最好, tr1:unordered_mapboost::unordered_mapstd::map ? 我最终宣布了一个typedef ,在编译时可以控制:

    #ifdef UnorderedMapBoost
    typedef boost::unordered_map<cell_key, Cell> cell_map;
    #else
    #ifdef UnorderedMapTR1
    typedef std::tr1::unordered_map<cell_key, Cell> cell_map;
    #else
    typedef std::map<cell_key, Cell>  cell_map;
    #endif // #ifdef UnorderedMapTR1
    #endif // #ifdef UnorderedMapBoost
    

    然后,我可以在编译时控制使用哪一个,并对其进行分析。 就我而言,可移植性最终变得更加重要,所以我通常使用std::map

    链接地址: http://www.djcxy.com/p/53517.html

    上一篇: google::dense

    下一篇: What is the replacement for MavenProjectBuilder which is deprecated in maven 3?