天天看點

C++ STL的各種實作版本

ansi/iso的c++ stl規範版本正式通過以後,各個c++編譯器廠商就可以依照标準所描述的原型去實作c++ stl泛型庫,于是出現多種符合标準接口,但具體實作代碼不同的泛型庫,主要有:

hp stl

hp stl是alexandar stepanov在惠普palo alto實驗室工作時,與meng lee合作完成的。hp stl是c++ stl的第一個實作版本,而且是開放源碼。其它版本的c++ stl一般是以hp stl為藍本實作出來的。

sgi stl

由silicon graphics computer systems公司參照hp stl實作,主要設計者仍然是stl之父alexandar stepanov,被linux的c++編譯器gcc所采用。sgi stl是開源軟體,源碼可讀性甚高。

stlport

為了使sgi stl的基本代碼都适用于vc++和c++ builder等多種編譯器,俄國人boris fomitchev建立了一個free項目來開發stlport,此版本stl是開放源碼的。

p.j.plauger stl

由p.j.plauger參照hp stl實作出來,被visual c++編譯器所采用,但不是開源的。

rouge wave stl

由rouge wave公司參照hp stl實作,用于borland c++編譯器中,這個版本的stl也不是開源的。

侯捷的stl源碼剖析是以sgi stl為研究對象的。

繼續閱讀