C ++标准库的版本

时间:2010-02-10 20:24:22

标签: c++

GNU C ++库(libstdc ++),"C++ Standard Library""Standard Template Library"和“SGI STL”之间有什么区别。使用编译器GCC在Linux中编程并在MSVC(MicroSoft Visual C ++)中使用Windos进行编程时,标准C ++库默认使用哪些? 谢谢!

2 个答案:

答案 0 :(得分:6)

C ++标准库 - 库必须提供哪些功能/行为的通用定义(字符串,对,iostream,容器,算法等,但具体情况因C ++标准的版本而异)。

标准模板库(STL) - C ++标准库的一部分,它与容器和算法(以及将这两者结合在一起的迭代器)有关。 STL不是原始C ++库的一部分。

libstdc ++ - C ++标准库的特定实现。

SGI STL - C ++标准库的STL部分的特定实现。我相信这也是STL的第一个版本之一。在STL成为C ++库的一部分之前,开发人员必须单独下载STL(与我们目前使用Boost的方式相同)。

答案 1 :(得分:4)

仅说明默认使用的标准C ++库的STL组件的来源:

  • MSVC使用Dinkumware库(或显然是其子集,因为Dinkumware也会出售MSVC的插件库:-P)
  • GCC使用SGI STL的扩展版本作为libstdc ++的一部分

如果要换出STL,还有其他STL实现,如STLport。选择你的毒药。 :-P