go里面的(值,引用)传递:

2023-10-16 16:17:40 浏览数 (1)

前言

介绍值传递与引用传递

一、什么是值传递?什么是引用传递?

什么是值传递?什么是引用传递? 值传递是我复制一份东西给你。然后传递给函数。在函数内部对参数的修改不会影响到原始值。 引用传递是我给你这个我手中的这个东西给你。在编程中相当于数据的地址。函数内部可以通过该地址修改原始值。

二、使用步骤

1.引入库

代码如下(示例):

代码语言:javascript复制
package main

import "fmt"

func valuePass(num int) {
	num = 10
}

func referencePass(num *int) {//注意:引用传递要加*号在类型之前哦*int
	*num = 10
}

func main() {
	num := 5

	fmt.Println("刚开始的值:", num)
	valuePass(num)            //调用函数后
	fmt.Println("修改了吗:", num) //数值不变还是一样,这是值传递

	fmt.Println("刚开始的值:", num) //
	referencePass(&num)        //通过指针调用函数(指针代表引用传递)函数内部可以通过该地址修改原始值。
	fmt.Println("修改了吗:", num)
}

2.效果

0 人点赞