前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >C++标准库

C++标准库

作者头像
用户7886150
修改2021-02-14 15:05:24
8890
修改2021-02-14 15:05:24
举报
文章被收录于专栏:bit哲学院bit哲学院

参考链接: C++ cstdlib abs()

1.C++标准定义了庞大且功能丰富的标准库,其内容分为10类,包括:?

C1语言支持? ? ? ? ? ? ? ? ? ?C2输入/输出? ? ? ? ? ? ? ? ?C3诊断功能?

C4通用工具? ? ? ? ? ? ? ? ? ?C5字符串? ? ? ? ? ? ? ? ? ? ? ?C6容器?

C7迭代器? ? ? ? ? ? ? ? ? ? ? C8算法? ? ? ? ? ? ? ? ? ? ? ? ? ?C9数值操作?

C10本地化?

?2.C++标准库所有的头文件都没有扩展名(.h),内容总共在51个标准头文件中定义。其中18个<cname> 形式的头文件(<complex>除外)内容与标准C语言的name.h头文件相同,但包含了C++扩展的功能。?

在<cname>形式的头文件中,与宏定义相关的名称在全局作用域中定义,其他名称在std命名空间中声明。?

另外,在C++中还可以使用name.h形式的C语言头文件,但不建议这样用。?

表1 C++标准库索引?

C++标准库由三组库构成:?

(1)C库:由C标准库扩展而来,强调结构、函数和过程,不支持面向对象技术。?

(2)C++库:增加了面向对象的库,包含了既有关键功能的类?

(3)标准模板库(STL):高效的C++程序库。该库包含了诸多在计算机科学领域里所常用的基本数据结构和基本算法。?

以上库文件都被定义在namespace std 中。?

C++库可以不规定头文件的扩展名。?

C标准库?

1)<Cmath>:提供给了22个不同的数学函数,如abs()、sqrt()、exp()等。?

2)<cstdlib>:提供了常用的数学函数,3个特殊函数和2个常量。?

exit():退出程序,清除静态对象?

abort():强制退出程序?

atexit():将一个函数作为参数并在程序退出时调用?

EXIT_SUCCESS:程序已经正常完成?

EXIT_FAULURE:程序正常结束?

3)<cassert>:定义了一个函数assert,用来测试一个条件,并在条件为假时强制程序退出。通常用来判断内存分配是否成功。?

4)<cctype>:提供了确定字符类型的功能。可以判断一个字符是否为数字字符、图形字符、小写、大写或空格并可以将字符进行大小写转换。?

5)<cerrno>:定义了一个变量,用它可以确定程序中发生的错误的类型。?

C++类库?

1)<string>:支持字符串处理的类库?

2)<complex>:提供了复数的表示和算法?

float_complex类?

double_complex类?

long_double_complex类?

3)<ios>定义了I/O流类的虚基类ios,通常不直接用它。?

4)<iostream>:标准I/O流类库,提供了cin、cout等全局对象类来支持输入输出功能?

5)<istream>:输入流类库?

6)<ostream>:输出流类库?

7)<fstream>:读写文件的类?

标准模板库STL?

在标准库中,容器、迭代器、算法和数值操作合称为标准模板库。?

STL被组织为以下13个头文件:<algorithm>,<deque>,<functional>,<iterator>,<vector>,<list>,<map>,<memory>,<numeric>,<queue>,<set>,<stack>,和<utility>。?

几乎所有的标准模板代码采用了类模板和函数模板的形式,因此相比于传统的由函数和类组成的库来说STL提供了更好的代码重用。?

<algothrithm>:提供了通用的算数算法和STL的一般算法。?

sort:以升序重新排列范围内的元素?

swap:交换存储在两个对象中的值?

max_element:指出序列中最大的元素?

find:对范围内的元素进行查找?

copy:复制序列?

replace:将范围内的所有等于old_value的元素都用new_value替代。?

<numerialc>:提供了4类对序列进行数字处理的算法?

accumulate:累加?

product:内乘?

partial_sum:部分和?

adjacent_difference():邻接差值

本文系转载,前往查看

如有侵权,请联系?cloudcommunity@tencent.com 删除。

本文系转载前往查看

如有侵权,请联系?cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
容器服务
腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
http://www.vxiaotou.com