函数重载
首先我们来了解一下函数重载这个概念。
重载函数是函数的一种特殊情况,为方便使用,C++允许在同一范围中声明几个功能类似的同名函数,但是这些同名函数的形式参数(指参数的个数、类型或者顺序)必须不同。也就是说用同一个函数完成不同的功能。这就是重载函数。重载函数常用来实现功能类似而所处理的数据类型不同的问题。不能只有函数返回值类型不同。
函数的重载其实就是“一物多用”的思想(这里指的“物”是“函数名”),其实不仅是函数可以重载,运算符也是可以重载的。例如:运算符“<<”和“>>”既可以作为移位运算符,又可以作为输出流中的插入运算符和输入流中的提取运算符。
简单的说就是string头文件和iostream头文件都有对string类型的声明。如果在程序中使用输入输出流iostream对string类型进行输入输出操作时程序就会报错。其原因在于iostream头文件中并没有重载与string类型相关的输入输出操作符,而该操作符的重载是在string头文件中实现的。
所以在使用string类型时加上string这个头文件就行了。