golang for range 引用注意的问题


 

package main

import "fmt"

type Student struct {
	Name string
	Age  int
}

func main() {
	data := make([]*Student, 0)

	src := []Student{
		Student{Name: "allen", Age: 30},
		Student{Name: "tom", Age: 33},
	}

	for _, m := range src {
		data = append(data, &m)
	}

	for _, s := range data {
		fmt.Println(*s)
	}

}

 

输出结果:

{tom 33}

{tom 33}

不是:

{allen 30}

{tom 33}

  


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM