C/Cpp常用头文件与库
1: C 头文件
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
include <assert.h> //设定插入点
include <ctype.h> //字符处理
include <errno.h> //定义错误码
include <float.h> //浮点数处理
include <fstream.h> //文件输入/输出
include <iomanip.h> //参数化输入/输出
include <iostream.h> //数据流输入/输出
include <limits.h> //定义各种数据类型最值常量
include <locale.h> //定义本地化函数
include <math.h> //定义数学函数
include <stdio.h> //定义输入/输出函数
include <stdlib.h> //定义杂项函数及内存分配函数
#include <string.h> //字符串处理
include <strstrea.h> //基于数组的输入/输出
include <time.h> //定义关于时间的函数
#include <wchar.h> //宽字符处理及输入/输出
include <wctype.h> //宽字符分类//
|
2:Cpp 头文件
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
|
include <algorithm> //STL 通用算法
include <bitset> //STL 位集容器
include <cctype> //定义错误码
#include <cerrno> //定义错误码
include <clocale> //定义本地化函数
include <cmath> //定义数学函数
include <complex> //复数类
#include <cstdio> /定义输入/输出函数
#include <cstdlib> //定义杂项函数及内存分配函数
include <cstring> //字符串处理
#include <ctime> //定义关于时间的函数
include <deque> //STL 双端队列容器
include <exception> //异常处理类
include <fstream> //文件输入/输出
include <functional> //STL 定义运算函数(代替运算符)
include <limits> //定义各种数据类型最值常量
#include <list> //STL 线性列表容器
#include <map> //STL 映射容器
include <iomanip>
#include <ios> //基本输入/输出支持
#include <iosfwd> //输入/输出系统使用的前置声明
include <iostream>
include <istream> //基本输入流
include <ostream> //基本输出流
include <queue> //STL 队列容器
include <set> //STL 集合容器
#include <sstream> //基于字符串的流
include <stack> //STL 堆栈容器
include <stdexcept> //标准异常类
include <streambuf> //底层输入/输出支持
include <string> //字符串类
include <utility> //STL 通用模板类
include <vector> //STL 动态数组容器
include <cwchar>
include <cwctype>
using namespace std;
///C99 增加
include <complex.h> //复数处理
include <fenv.h> //浮点环境
include <inttypes.h> //整数格式转换
include <stdbool.h> //布尔环境
include <stdint.h> //整型环境
include <tgmath.h> //通用类型数学宏
|
3: STL 标准模板库
- STL,英文全称 standard template library,中文可译为标准模板库或者泛型库,其包含有大量的模板类和模板函数,是 C++ 提供的一个基础模板的集合,用于完成诸如输入/输出、数学计算等功能;
- STL 是一些容器、算法和其他一些组件的集合;
3.1 STL 的组成
STL 的组成 | 含义 | 其他 |
容器 | 一些封装数据结构的模板类,例如 vector 向量容器、list 列表容器等 | - |
算法 | STL 提供了非常多(大约 100 个)的数据结构算法,它们都被设计成一个个的模板函数,这些算法在 std 命名空间中定义,其中大部分算法都包含在头文件 中,少部分位于头文件 中 | - |
迭代器 | 在 C++ STL 中,对容器中数据的读和写,是通过迭代器完成的 | - |
函数对象 | 如果一个类将 () 运算符重载为成员函数,这个类就称为函数对象类,这个类的对象就是函数对象(又称仿函数) | - |
适配器 | 可以使一个类的接口(模板的参数)适配成用户指定的形式,从而让原本不能在一起工作的两个类工作在一起。值得一提的是,容器、迭代器和函数都有适配器 | - |
内存分配器 | 为容器类模板提供自定义的内存申请和释放功能,由于往往只有高级用户才有改变内存分配策略的需求,因此内存分配器对于一般用户来说,并不常用 | - |
3.2 STL 头文件
- 按照 C++ 标准库的规定,所有标准头文件都不再有扩展名。以 为例,此为无扩展名的形式,而 <vector.h> 为有扩展名的形式。
1
2
3
4
5
6
7
8
9
10
11
12
13
|
include <iterator>
include <functional>
include <vector>
include <list>
include <queue>
include <deque>
include <stack>
include <set>
include <map>
include <algorithm>
include <numeric>
include <memory>
include <utility>
|
4: Cpp 库积累
xpack
: 实现 C++ 结构体和 JSON/XML/BSON 互转的库cpp-httplib
: 一个只有头文件的 HTTP/HTTPS library。wondertrader
: 一站式的量化交易框架。这是采用 C++ 开发的一站式量化交易框架,支持量化交易过程中的数据清洗、回测分析、实盘交易、运营调度等环节。可用于多账户交易、极速/高频交易、算法交易等场景。
文章作者
lucas
上次更新
2024-04-08
(9522c9f)