您是否只是根据以下属性选择 STL 容器?
- 搜索/更新
- 插入和
- 删除
如果不是,您的选择还有什么依据?是否有任何参考资料列出了每个容器在所有这些不同属性中的表现?
您是否只是根据以下属性选择 STL 容器?
如果不是,您的选择还有什么依据?是否有任何参考资料列出了每个容器在所有这些不同属性中的表现?
Scott Meyers 的Effective STL不仅涵盖了这一点,还涵盖了使用一些奇怪的容器(例如set
.
+1 有效的 STL。
但是如果你需要在线参考,StackOverflow Question 471432中有一个很好的流程图
保证将数据放置在连续内存中可能很重要。通常,如果您有兴趣将结构中的数据与看起来像 doSomething(int* data, int dataCount) 的接口一起使用。
我首先考虑数据的“形状”,每个项目可以重复的频率等。