2016 - 2024

感恩一路有你

传值和传址的区别 传值调用和引用调用有什么区别?

浏览量:1531 时间:2021-03-12 19:59:21 作者:admin

传值调用和引用调用有什么区别?

值和地址传输的概念主要在于内存指针。但另一种方式更容易理解。

传递值:在内存中复制传递的形式参数变量,然后将其传递给函数,因此无论函数中的变量如何更改,它都不会更改原始内容。

传输地址(传输指针):告诉函数内存中参数变量的地址,这样函数中的更改会影响原始内容

引用可以直接对实际参数进行操作,不需要返回值,效率高。当传递值调用有返回值时,只能返回一个值,有时不能满足需要,会产生一个临时对象,效率较低。如果您满意,请采用

形式参数和实际参数:

int a(int x){//这个x是形式参数,是您定义的变量名

…]}

int main(){

int Y=5;

a(Y)//具体变量Y是实际参数

a(z)//z也是实际参数,这是一个实值

}

值转移调用和引用调用:

两者的区别在于,当传递引用时,实际传递给函数的参数是对实际参数的引用,而不是仅仅将值传递给函数。在传递引用时,形式参数和实际参数是相同的变量,即它们使用相同的内存空间和地址。传输值时,它们的地址不同;

2。在传输引用时,没有新的变量,因此类对象参数不会被构造或破坏。如果是值转移调用,则在调用时构造,退出时销毁;

3。因为原始参数的地址是用来引用的,所以引用参数值的修改会在退出函数后反映在主函数中,通过值转移调用修改参数不会影响主函数。

传值调用和引用调用有什么区别?

引用可以直接对实际参数进行操作,无需返回值,效率高。当值转移调用中有返回值时,只能返回一个值。有时它不能满足需要,会产生一个临时对象,效率低下。如果您满意,请接受

传值和传址的区别 k8s 传指针和传引用的区别

版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。