C++函数

函数基础 函数的前置声明 只需写出返回值类型和参数列表类型,不许写出参数名称。应为参数名称只有在函数内使用参数时才是必要的。

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方式将对象作为函数参数传入时,对象本身并不会复制出一份——复制的是对象的地址。使用理由如下:
  • 希望直接对传入的对象修改
  • 降低复制大型对象的额外负担
除非希望在函数内更改参数值,否则建议在传递内置类型时,不要使用传址方式。传址机制主要用于传递class object

    推荐阅读