首页 > 编程语言 > 详细

python值的引用传递和go语言的值传递

时间:2019-05-05 10:27:23      阅读:121      评论:0      收藏:0      [点我收藏+]

一:值传递

实参a 原本指向地址 1638212,代表1638212这个地址的值是3。在swap函数中,实参a将值拷贝给形参a,形参a此时也在内存中拥有地址,地址= xxxx,值为3,
在所有的函数体内的操作,都是对 xxxx这个地址的操作,所以并不会影响实际参数的值。

二:引用传递

这个理解起来更简单,我们这样理解引用,引用是变量的一个别名,调用这个别名和调用这个变量是完全一样的。所以swap2的结果可以解释。值得注意的是,
由于引用时别名,所以引用并不是一种数据类型,内存并不会给它单独分配内存,而是直接调用它所引用的变量。这个与地址传递也就是指针是不一样的
(也就是说一个指针虽然指向一个变量,但是这个指针变量在内存中是有地址分配的)

 

python值的引用传递和go语言的值传递

原文:https://www.cnblogs.com/one-tom/p/10811302.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!