函数基础
函数的前置声明
只需写出返回值类型和参数列表类型,不许写出参数名称。应为参数名称只有在函数内使用参数时才是必要的。
bool fun1(int, int &);
传址/值(Pass By Reference/ Value) 【C++函数】引用为对象的别名,两者在内存中地址相同。引用必须在初始化时赋值。
int a = 1;
int &ra = a;
C++不允许改变引用所代表的对象
int a = 1;
int b = 2;
int &r = a;
r = b;
// get value of 2 to r/a
当以by reference方式将对象作为函数参数传入时,对象本身并不会复制出一份——复制的是对象的地址。使用理由如下:
- 希望直接对传入的对象修改
- 降低复制大型对象的额外负担