在c语言中给函数传参时有两种方式,一种是传值,一种是传址。c++中的传参也两种,一种是传值,一种是传引用。从概念上可以认为是一一对应的。
传值: 我们都知道形参是实参的一份临时拷贝,也就是说,在值传递的时候是现在函数的栈上开辟出来一块空间然后把实 参 复制一份,然后接下来使用的就是这份复制得来的形参,这也从根本上说明了改变形参不会影响实参。
传引用:直接去使用内存找到这个参数,然后使用这个参数(跟c语言中的传地址类似),所以省去了函数调用时栈区形参 拷贝这一步。而且在函数中对参数的修改会影响到参数的实际值。
所以说在c++中如果需要传参尽量使用传引用,这样会减少程序的开销,使程序运行更快速。传引用可能会引起使参数的值发生改变,如果想要避免这个问题。可以在参数前面加一个const。