zoukankan      html  css  js  c++  java
  • golang 通过指针修改结构体,达到类似引用类型的目的

    package main
    
    import (
    	"fmt"
    	"strconv"
    )
    
    type UserInfo struct {
    	Id   string //用户编号
    	Name string //用户名称
    }
    
    func main() {
    	//获取所有用户信息
    	usrs := GetAllUser()
    	//第一次打印
    	fmt.Println(usrs[0])
    	//遍历用户,批量重新设置姓名
    	for _, u := range usrs {
    		SetUserName(u)
    	}
    	//第二次打印
    	fmt.Println(usrs[0])
    }
    func GetAllUser() (usrs []*UserInfo) {
    	for i := 1; i < 3; i++ {
    		var u UserInfo
    		u.Id = strconv.Itoa(i) //设置用户编号
    		u.Name = "张三" + u.Id   //设置用户名
    		usrs = append(usrs, &u)
    	}
    	return
    }
    func SetUserName(u *UserInfo) {
    	u.Name = "李四" //重置用户名
    }
    

    输出结果

    &{1 张三1}
    &{1 李四}
    
  • 相关阅读:
    动态表格
    Palindrome Number
    String to Integer (atoi) ???
    Reverse Integer
    Two Sum
    Path Sum
    Minimum Depth of Binary Tree
    Plus One
    Maximum Depth of Binary Tree
    Symmetric Tree
  • 原文地址:https://www.cnblogs.com/nickchou/p/13560654.html
Copyright © 2011-2022 走看看