标准库和标准模板库有什么区别?

kgr*_*rad 21 c++ standards stl c++-faq

我一直在看C++标准库和C++标准模板库(STL).他们之间有什么区别?维基百科提到他们共享一些标题,但这就是它.

Jam*_*lis 22

标准模板库(STL)的容器,迭代器,算法和函数对象,这是由亚历山大·斯捷潘诺夫创建库; SGI网站具有规范的实施和文档.

标准库是是C++部分的文库; 它包括大部分标准模板库(STL).

在通常的用法中,"STL"也用于指代来自实际SGI STL或来自实际SGI STL的C++标准库的部分.例如,人们经常使用"STL"来引用std::vectorC++标准库中的其他容器,因为它们起源于SGI STL.

  • 要添加答案,您现在使用的(使用`std ::`前缀)可能不是"STL",而只是"标准库",除非您故意获取并安装了历史STL的副本. (5认同)
  • 我不喜欢"包括".这意味着(a)副本是逐字的[它不是],而(b)变化为一个意味着另一个变化[他们没有].在句子中"基于"工作是最好的. (2认同)