[C++STDlib基础]C++标准库概述
2013-03-06 00:57
232 查看
前言
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> |
相关文章推荐
- [C++STDlib基础]关于单字符的操作——C++标准库头文件<cctype>
- [C++STDlib基础]关于数学函数的介绍——C++标准库头文件<cmath>
- [C++STDlib基础]关于C标准输入输出的操作——C++标准库头文件<cstdio>
- [C++STDlib基础]关于日期时间的操作——C++标准库头文件<ctime>
- [C++STDlib基础]关于日期时间的操作——C++标准库头文件<ctime>
- [C++STDlib基础]关于单字符的操作——C++标准库头文件<cctype>
- [C++STDLib基础]关于C++string字符串的操作——C++标准库头文件<string>
- [C++STDlib基础]关于C标准输入输出的操作——C++标准库头文件<cstdio>
- [C++STDlib基础]IO输入输出流概述
- [C++STDlib基础]关于字符串的操作——C++标准库头文件<cstring>
- c++基础系列-----c++内存概述
- C++基础:C++标准库之set简介
- [C++STDLib基础]文件
- C++基础:C++标准库之set简介
- 基础C++概述 (提纲 0)
- c/c++ 网络基础概述
- 基础C++概述 (合集)
- C/C++语言Windows编程基础 - 概述
- 【c++基础】4.程序控制结构概述
- C++基础(一) C++语言概述