简体   繁体   English

std :: set和boost :: container :: set之间的区别

[英]Difference between std::set and boost::container::set

std :: setboost :: container :: set之间的主要区别是什么?

The main difference between boost containers and standard containers is that boost containers allow for incomplete types. 增压容器和标准容器之间的主要区别在于增压容器允许不完整的类型。 This can make a huge difference when implementing more complex data structures that rely on a combination of underlying containers. 当实现依赖于底层容器组合的更复杂的数据结构时,这会产生巨大的差异。

There might be performance differences between boost containers and particular implementations of standard containers. boost容器和标准容器的特定实现之间可能存在性能差异。 But that could go either way. 但这可能是两种方式。

EDIT : Here are some additional notes for set/map containers (see ref ): 编辑 :这里有一些关于set / map容器的附加说明(参见参考资料 ):

[multi]set/map containers are size optimized embedding the color bit of the red-black tree nodes in the parent pointer. [多]集合/映射容器是大小优化的,在父指针中嵌入红黑树节点的颜色位。 [multi]set/map containers use no recursive functions so stack problems are avoided. [multi] set / map容器不使用递归函数,因此避免了堆栈问题。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM