STL Map在哪里实现_Rb_tree_insert_and_rebalance?

Sri*_*G S 1 c++ map red-black-tree

我正在研究如何std::map实施STL .我知道它是用红黑树实现的.所以,我只是很想知道如何在STL中实现红黑树的原因是为了了解实现的效率.

std::map包括stl_tree.h.这是实施红黑树的地方.

所有函数(插入发生的地方)都抽象插入和调用_Rb_tree_insert_and_rebalance函数.但是我找不到这个的实现.

有没有实现的想法?

For*_*veR 7

它完全是特定于实现的,但是,我认为你的意思是libstdc++,因为实现是开源的 - 你可以在源文件中搜索这个功能.在gcc-4.8这个函数是在文件中libstdc++-v3/src/c++98/tree.cc.例如,你可以在这里搜索:github gcc sources