[C++STDlib基础]C++标准库概述
来源:互联网 发布:asp.net 获取当前域名 编辑:程序博客网 时间:2024/04/30 04:06
前言
C++标准库是个极为庞大的体系,因此面面俱到的介绍几乎是不可能的。而且任何一个系统都有其复杂的一面。我觉得即使是只介绍C的标准库其工作量也是巨大的,所以这次整理的内容只是从宏观入手。我觉得了解C++标准库有助于加深对C++的理解,因此我想整理一下自己的学习心得。也可以使大家从另一个角度认识一下C++。
语法并不是一个语言的全部,学习一门语言的精力经常是放在他的库上,或者是内置库,或者是扩展库,或者是第三方库。不过精力应该放在学习库的用法上,而不是掌握库的结构或实现。大家应该了解,语法像C++这般复杂的语言是绝无仅有的,很多简单的语言,只要愿意,半个小时就能学尽它的语法,并且这种语言依然很有效。
标准库
从最宏观的层面上看,C++标准库由十个部分组成:语言支持,诊断,通用工具,字符串,本地化,容器,迭代器,通用算法,数值算法和IO。
所有的标准库定义的东西,除了宏,operator new 和opreator delete,都在std或者是内嵌在std里的命名空间里。宏是预处理对象,它不在命名空间里是件很自然的事情,因此对宏的处理发生在编译前。
头文件
C++标准库的所有头文件都没有扩展名。C++标准库的内容总共在50个标准头文件中定义,其中18个提供了C库的功能。来自C标准库的所有头文件,以另一根名称包含在C++标准中。将原名称移去”.h”并在开头处加上”C”作为新的名称。Eg:<time.h>改成<ctime>.C++标准库的头文件与C标准库的头文件的唯一区别是,函数位于std::命名空间中。
语言支持 (4)
<exception><limits><new><typeinfo>
容器 (8)
<bitset><deque><list><map><queue><set><stack><vector>
一般 (7)
<algorithm><functional><iterator><locale><memory><stdexcept><utility>
字符串 (1)
<string>
数值算法 (3)
<complex><numeric><valarray>
IO流 (9)
<fstream><ios><iostream><iosfwd><iomanip><istream><ostream><sstream><streambuf>
C标准库 (18)
<cassert><ccomplex><cctype><cerrno><cfloat><clocle><cmath><csetjmp><csignal><cstdarg><cstddef><cstdio><cstdint><cstdlib><cstring><ctime><cwchar><cwctype>
经常使用的有:string,iostream,cstdlib,ctime,cmath,cstdio,ctring
- [C++STDlib基础]C++标准库概述
- [C++STDlib基础]IO输入输出流概述
- C标准库学习stdlib.h
- C /C++标准库 - <cstdlib>(stdlib.h)
- c/c++标准库-stdlib.h
- [C++STDLib基础]文件
- stdlib 标准C 模板库函数
- [C++STDlib基础]关于C标准输入输出的操作——C++标准库头文件<cstdio>
- [C++STDlib基础]关于日期时间的操作——C++标准库头文件<ctime>
- [C++STDlib基础]关于字符串的操作——C++标准库头文件<cstring>
- [C++STDlib基础]关于数学函数的介绍——C++标准库头文件<cmath>
- [C++STDlib基础]关于单字符的操作——C++标准库头文件<cctype>
- [C++STDLib基础]关于C++string字符串的操作——C++标准库头文件<string>
- C标准库源码解剖(14):通用函数stdlib.h
- C语言标准库(3)--#include<stdlib.h>
- C语言标准工具库函数库:stdlib.h
- C语言stdlib库(#include<stdlib.h>)
- C标准函数库(三)<stdlib.h>
- Tomcat修改虚拟路径简介
- 【公告】于2013年3月20日支付宝接口网关地址切换
- 老台门旧事(2)
- verycd电驴免铜光盘下载,verycd资源获取器 GetVeryCD
- python多线程编程
- [C++STDlib基础]C++标准库概述
- windows server 2003 启动和关闭
- 在Windows Server 2003系统中添加新用户
- DB2 LOAD命令中COPY NO/COPY YES/NONRECOVERABLE的说明
- SSH框架学习(十、Junit+GroboUtils进行多线程测试)
- 微软老将Philip Su的离职信:回首12年职场生涯的心得和随笔
- SSH框架学习(九、Junit4单元测试)
- 常用的Android对话框
- 高效JDBC编程工具JadePool快速入门