常见标准库
1. 容器类型
<vector><deque><forward_list><list><map><set><unordered_map><unordered_set><queue><stack><array><bitset>
<map> 等也包含 multi* 的模板,priority_queue 被包含在 <queue> 中。
2. 算法
<cstdlib>如bsearch()或qsort()<algorithm>泛型算法<regex>正则表达式
3. 流
<iostream>标准 I/O 流<iomanip>操纵符<sstream>字符串流<fstream>文件流<cstdio>C 标准库 I/O
4. 数学、语言支持
<cstdlib>C 标准库<ctime>C 时间<cmath>C 数学函数<random>随机数发生器
5. 并发
<future>异步等待<thread>线程
6. 异常
除非组件确认不会抛出异常,否则在一些位置(如 main())捕获并处理某一个层次的异常根类(如 exception)是一个好习惯。
c++
int main() {
try {
// ...
}
catch (MyError& me) {
// me.what(), me. ...
}
catch (runtime_error& re) {
// re.what()
}
catch (exception& e) {
// e.what()
}
catch (...) {
// 局部清理
}
}