前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >golang学习笔记——struct结构体

golang学习笔记——struct结构体

作者头像
码缘
发布2021-03-04 15:05:52
3570
发布2021-03-04 15:05:52
举报
文章被收录于专栏:PHP修行之路PHP修行之路

定义

type 变量名 struct{

元素1名称 元素1类型

元素2名称 元素2类型

}

package main

import (

"fmt"

)

type student struct {

id int

name string

age int

addr string

}

func main() {

//顺序初始化 每个元素必须都设置

s1 := student{1, "mayuan", 26, "tianjin"}

fmt.Println("s1 = ", s1)

//指定元素赋值,其他元素默认0

s2 := student{name: "mayuan", age: 26}

fmt.Println("s2 = ", s2)

}

操作成员使用(.)运算符

package main

import (

"fmt"

)

type student struct {

id int

name string

age int

addr string

}

func main() {

var s1 student

s1.name = "mayuan"

s1.age = 26

fmt.Println("s1 = ", s1)

}

指针操作

package main

import (

"fmt"

)

type student struct {

id int

name string

age int

addr string

}

func main() {

//指针指向合法操作后,才操作成员

var s student

var p1 *student

p1 = &s

//使用 p1.id和(*p1).id相同

p1.name = "mayuan"

(*p1).addr = "tianjin"

p1.age = 26

fmt.Println("s = ", s)

//使用new 得到一个指针

p2 := new(student)

p2.addr = "haha"

fmt.Println("*p2 = ", *p2)

}

参数为值传递

package main

import "fmt"

type student struct {

age int

username string

}

func changeStu(stu student){

stu.username = "LiLi"

}

func main() {

lili := student{24,"lili"}

changeStu(lili)

fmt.Println(lili)

}

//*********输出***********

{24 lili}

Tags 标签(可以在元素后面添加 `标签1 标签2 标签3` 来定义元素的属性)

type student struct {

age int `json:"age" xml:"age"`

username string

}

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2021-02-28 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档