C++ 标准库 (STL) 概述

C++ 标准库 (STL) 概述

所有 C++ 库实体都在在一个或多个标准标头中声明或定义。 此实现包括 C++ 标准版不需要的两个额外标头:。 有关此实现支持的标头的完整列表,请参阅头文件参考。

C++ 标准版定义两种类型的符合标准的库:

托管实现,它支持 C++ ISO 标准所描述的所有必需的标准库标头。

独立实现,它仅需要标准库标头的一个子集。 所需的子集为:

独立标头子集

(至少声明 atomic_signed_lock_free 和 atomic_unsigned_lock_free)

(至少声明 abort、atexit、at_quick_exit、exit、quick_exit)

自 C++11 起,已弃用以下标头:

独立实现和托管实现之间的其他差异包括:

托管实现需要一个名为 main 的全局函数。 独立实现可以定义其自己的启动和终止函数。

托管实现必须支持同时运行多个线程。 独立实现的实现器决定其库是否支持并发线程。

Microsoft C++ 标准库同时满足独立和托管要求。

C++ 库标头有两个更广泛的细分:

iostreams 约定。

C++ 标准库 (STL) 参考约定。

本节包含以下部分:

使用 C++ 库标头

C++ 库约定

iostreams 约定

C++ 程序启动和终止

安全库:C++ 标准库

经过检查的迭代器

调试迭代器支持

C++ 标准库 (STL) 参考

C++ 标准库中的线程安全

stdext 命名空间

正则表达式 (C++)

有关 Visual C++ 运行时库的详细信息,请参阅 CRT 库功能。

注意

Microsoft 对 C++ 标准库的实现通常称为 STL 或标准模板库。 尽管 C++ 标准库是 ISO 14882 中定义的库的正式名称,但由于搜索引擎中常用“STL”和“标准模板库”,因此我们偶尔使用这些名称,以便更轻松地查找文档。

根据历史记录,“STL”最初是指 Alexander Stepanov 编写的标准模板库。 该库的一部分与 ISO C 运行时库、Boost 库的一部分和其他功能一起在 C++ 标准库中进行了标准化。 有时,“STL”还用于表示根据 Stepanov 的 STL 改编的 C++ 标准库的容器和算法部分。 在本文档中,标准模板库 (STL) 是指整个 C++ 标准库。

另请参阅

C++ 标准库

💡 相关推荐

星光的意思
bet28365365官网

星光的意思

📅 09-03 👀 9963
天涯明月刀最新最全航海喜好流行货物及航行时间
人到中年,还沉迷这4件事的男人,多半晚节不保