代码改变世界

C++学习笔记 2014-9-20

2014-09-20 22:07  想打架的蜜蜂  阅读(164)  评论(0)    收藏  举报

1、重载:如果同一个函数名称具有两个或者更多的函数定义,就是重载。对于函数名相同的函数,编译器会检查函数调用中的实参和实参类型,也就是说任何两个同名函数定义必须使用不同数量的形参,或者使用不同类型的形参,注意如果两个定义唯一的区别就是返回值的类型,则不能重载函数名称。

2、如果一个函数要求double类型的实参,但你提供的是int类型的实参,c++会将int实参自动转换为double的值,但是如果与这个double参数同名的函数存在并且参数类型是int,这时就将调用int类型参数的函数。故不要为两个不相干的函数使用相同的函数名,调用不慎将出错。

3、c++中不返回值的函数称为void函数。就是原来使用返回值的部分使用了void关键字。return语句不包含一个返回值的表达式。并且return语句是可选的。return语句只是终止函数调用。有返回值的每个函数必须执行一个return语句来终止。

4、使用一个传引用调用形参(或者成为传引用调用参数,或者简称为引用参数)时,函数调用中相应的实参必须是一个变量,用于替换形参的将是这个实参变量。这好比将实参变量原封不动的拷贝到函数定义中,并取代形参。

必须以某种方式来标记传引用调用参数,使编译器将其与传值调用参数区分开。为了标记一个传引用调用参数,需要在函数申明和函数定义头中,在类型名称的末尾附加符号&,如下:

    void get_input(double& variable)

{

}

执行函数调用时,为函数提供的实际上并不是实参名称。为它提供的是与每个名称关联在一起的内存位置的列表。

形参和实参:

1、函数的形参在函数申明中列出,并在函数定义中使用。任何形参都是一种空白位置或者占位符,会在函数调用时被别的东西填充

2、实参用于填充形参,写一个函数调用时,实参在函数名之后的圆括号中列出,执行这个函数调用时,实参会在形参的位置“插入”,

3、“传值调用”和“传引用调用”这两个术语是指“插入”的过程中具体采用的一种机制。在传值调用机制中,只使用实参的值。在这种机制中,形参是一个局部变量,他被初始化为响应的实参的值。在传引用调用机制中,实参是一个变量,而且会照搬整个变量。在这种机制中,实参变量会替换形参,故对形参所做的任何更改其实都会作用于实参变量。