当前位置:  开发笔记 > 编程语言 > 正文

性能的"家酿"STL?

如何解决《性能的"家酿"STL?》经验,为你挑选了2个好方法。

http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2271.html

根据那篇文章,STL不适合游戏开发.你对此有何看法?

我目前的做法是:使用STL,如果导致性能问题与homebrew容器(或分配器)交换(还没有来,但我没有做高端的3D游戏;))



1> Adrian Grigo..:

在这种情况下,您的方法是唯一合理的选择.优化的规则#1是"除非你确切知道瓶颈在哪里,否则不要进行优化".

您应该仍然可以在以后相对容易地交换容器,特别是如果您使用通过typedef定义的类型而不是直接使用STL容器.我的意思是:

#include 

typedef std::vector MyIntVectorType;

int main()
{
   MyIntVectorType theVector; 
}



2> i_am_jorf..:

你必须知道STL在幕后做了什么.例如,如果您使用向量,例如,不要让它任意增长,请使用vector :: resize()预先进行分配,这样它只分配一次.类似的东西.你的方法并不坏 - 只需做你的功课.

推荐阅读
yzh148448
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有