值传递和引用传递以及指针传递
值传递:
形参是实参的拷贝,改变形参的值并不会影响外部实参的值。从被调用函数的角度来说,值传递是单向的(实参->形参),参数的值只能传入,
不能传出。当函数内部需要修改参数,并且不希望这个改变影响调用者时,采用值传递。简言之,函数内部的对参数的修改不能导致函数外部该参数的变化。
指针传递:
形参为指向实参地址的指针,当对形参的指向操作时,就相当于对实参本身进行的操作。
引用传递:
只有C++有该部分内容。实际项目中,引用最大的作用是作为函数的(不可能为null的)const参数传入。
区别:
无论你传值还是传指针,函数都会生成一个临时变量, 但传引用时,不会生成临时变量,
可以把引用当做语法糖,但传引用主要是它不生成临时变量,不进行返回值copy等,速度快。这是引用传递和指针传递的主要区别。

浙公网安备 33010602011771号