我知道我的STL(g++ 4.x.x附带)使用红黑树来实现地图等容器。是否可以直接使用STL内部的红黑树。如果是这样,怎么办?如果不是,为什么不——为什么STL不公开红黑树?
令人惊讶的是,我无法使用谷歌找到答案。
编辑:我正在研究使用红黑树作为插入时额外分配器构造函数调用的解决方案。看这个问题 https://stackoverflow.com/questions/11373796/custom-memory-allocator-for-stl-map。我的STL使用红黑树来实现地图。
实际上 - 答案非常简单,并且与您的 gcc 版本无关。您可以从以下位置下载 stl 源代码国际创价学会的网站 http://www.sgi.com/tech/stl/download.html,并亲自查看实现和使用。
例如,在3.2版本中,您可以在stl_tree.h文件中看到红黑树的实现,并在stl_set.h中看到其使用示例。
请注意,由于 stl 类是模板类,因此实现实际上位于头文件内。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)