例如 int fin(int a)
当调用函数时 int b;
fin(b);
编译器会将b赋值给a,在函数体内操作a,、
当使用引用时
int fin(int & a)
fin(b),没有赋值过程,函数会将a当做实参的别名进行操作。
可以看出引用的两个特性:
1、节约空间,少了实参赋值给形参的过程。
2、可以直接操作实参。
在面向对象中,因为类对象往往很大,用赋值方法进行函数调用时,开销增大。
例如 int fin(int a)
当调用函数时 int b;
fin(b);
编译器会将b赋值给a,在函数体内操作a,、
当使用引用时
int fin(int & a)
fin(b),没有赋值过程,函数会将a当做实参的别名进行操作。
可以看出引用的两个特性:
1、节约空间,少了实参赋值给形参的过程。
2、可以直接操作实参。
在面向对象中,因为类对象往往很大,用赋值方法进行函数调用时,开销增大。