06.文件操作与模板
文件操作
-
使用/创建文件的基本流程
- 打开文件 -> 读写文件 -> 关闭文件
函数模板
c++
1 | template<class 类型参数1, class 类型参数2, ...> |
-
编译器根据类型参数自动生成相应函数
-
函数模板可以重载
-
C++编译器遵循以下优先顺序
- 先找参数完全匹配的普通函数(非由模板实例化而得的函数)
- 再找参数完全匹配的模板函数
- 再找实参经过自动类型转换后能够匹配的普通函数
- 上面的都找不到, 则报错
类模板
c++
1 | template <类型参数表> |
-
编译器由类模板生成类的过程叫类模板的实例化
- 编译器自动用具体的数据类型替换类模板中的类型参数, 生成模板类的代码
-
由类模板实例化得到的类叫模板类
- 为类型参数指定的数据类型不同, 得到的模板类不同
- 不同的模板类不兼容
string类
常用api
输入输出
-
输出重定向
freopen("test.txt", "w", stdout);
-
输入重定向
freopen("t.txt", "r", sdin)