golang 结构体copy


说明

直接将结构体赋值给新的变量,是拷贝

当结构体中有指针时,需要手动实现指针指向内容的copy

func (m *info) Copy() *info {
	newOne := *m
	newOne.arrayField = make([]string, len(m.arrayField)) 
   for i := range m.arrayField { 
     newOne.arrayField[i] = m.arrayField[i] 
   } 
    return &newOne
 }