Go中使用指针实例化结构体案例

32 阅读1分钟

代码:

/*作者:南雨北斗*/
package main
import(
	"fmt"
)

type Person struct {
	Name string
}

func sayHello(p *Person){
	p.Name = "小明"
}

func main(){
	var per = &Person{"小红"}
	sayHello(per)
	fmt.Println(*per)
}

输出:

{小明}

解析:sayHello函数中p参数为指针类型,实例化Person结构体后,用&指针取值符号获取内存地址,执行sayHello函数,然后打印per结构体的值。

提示:指针方式实例化结构体可以修改结构体成员的值。指针方式实例化避免了复制结构体,可以提升程序性能。

(以上内容为原创,转载需注明出处©南雨北斗)