1. 函数基础
1) 函数重载:即同一个名字对应多个不同的函数。
2) 函数返回类型:不能是数组类型或者函数类型,但是可以是指向数组或函数的指针。
3)局部变量:形参和函数体内部定义的变量统称为局部变量。
4)自动对象:只存在于块执行期间的对象,如形参。
5)局部静态对象:在程序的执行路径第一次经过对象定义语句时初始化,直到程序终止才销毁。
6)函数的声明:也称为函数原型,函数可以声明多次,但是只能定义一次或者没有定义。
7)函数声明与函数定义的区别:函数声明无需函数体,用分号代替即可,也无需形参的名字。
8)函数的三要素:返回类型 + 函数名 + 形参类型。
9)在头文件中声明函数,在源文件中定义函数。所以定义的源文件应该包含声明的头文件。
2. 参数传递
1)传值参数
a)当实参的值传递(拷贝)给形参时,形参和实参是两个独立的对象。
b)指针形参的行为和其他非引用类型一样,执行指针拷贝时,拷贝的是值,拷贝之后是两个独立的指针。
2)传引用参数
a)引用形参绑定初始化它的对象。
b)使用引用形参可以避免拷贝:拷贝大的类类型对象或者容器对象效率比较低。
c)当函数无需改变引用参数的值时,最好将其声明为常量引用。
d)使用引用形参可以返回额外的信息:一个函数只能返回一个值,当需要返回多个时使用引用形参。
3)const形参和实参
4)数组形参