欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    61396-Go语言程序设计项目化教程(微课版)4.1 结构体.pptx

    • 资源ID:96686992       资源大小:531.72KB        全文页数:21页
    • 资源格式: PPTX        下载积分:20金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要20金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    61396-Go语言程序设计项目化教程(微课版)4.1 结构体.pptx

    结构体结构体结构体定义初始化结构体变量实例化结构体01.03.02.目录匿名结构体04.01结构体定义结构体定义结构体语法格式1结构体定义结构体定义结构体的定义Go语言中没有“类”的概念,通过struct来实现面向对象通常用于表达一个事物的全部或部分属性是一种自定义数据类型,可以封装多个基本数据类型本质是将零个或者多个任意类型的命名变量组合在一起的聚合数据类型每个变量叫做结构体的成员,变量名必须唯一,可用“_”补位支持使用自身指针类型成员type 类型名 struct 字段名 字段类型 字段名 字段类型.结构体语法格式类型名:标识自定义结构体的名称,在同一个包内不能重复。字段名:表示结构体字段名,结构体中的字段名必须唯一。字段类型:表示结构体字段的具体类型。type Student struct stuID int stuName string age int /成员变量通常一行写一个,变量的名称在类型的前面结构体案列 type Student struct stuID,age int stuName string/相同类型的连续成员变量可以写在一行上。结构体案列1结构体定义结构体定义 type Student1 struct stuId,age int stuName,address string class,teacher string type Student2 struct stuId int address,stuName string age int class,teacher string 成员变量的顺序对于结构体同一性很重要相同类型的不连续成员变量不可以写在一行上1结构体定义结构体定义02实例化结构体结构体的使用结构体实例化语法new关键字2实例化结构体实例化结构体结构体的使用结构体属于数据类型,因此和声明Go语言内置数据类型一样使用var关键字声明结构体类型只有当结构体实例化时,才会真正地分配内存即必须实例化后才能使用结构体的字段package mainimport fmtfunc main()type person struct name string city string age int8 var p1 person/实例化结构体实例化语法var 结构体实例 结构体类型package mainimport fmtfunc main()var p1 structname string;city string;age int在定义一些临时数据结构等场景下还可以使用匿名结构体2实例化结构体实例化结构体package mainimport fmtfunc main()type person struct name string city string age int8 var p1=new(person)2实例化结构体实例化结构体new关键字实例化语法结构体实例:=new(结构体类型)使用 new 实例化结构体后,得到的是结构体的地址;结构体类型为指针类型通过&符号对结构体取地址取地址的同时会将结构体实例化03初始化结构体变量顺序初始化指定初始化结构体普通变量结构体指针变量3初始化结构体变量初始化结构体变量结构体初始化结构体类型的值可以通过结构体字面量来设置,即通过结构体的成员变量来设置有两种格式的结构体字面量:顺序初始化、指定成员初始化要求顺序为每个成员变量指定一个值,这种格式必须记住每个成员变量的顺序结构体顺序初始化通过指定部分或者全部成员变量的名称和值来初始化结构体变量,如果成员被忽略的话将默认用零值结构体指定成员初始化结构体初始化的几种情况结构体定义时,结构体中的值会根据字段类型被赋予一个默认值使用键值对对结构体进行初始化时,键对应结构体的字段,值对应该字段的初始值初始化结构体的时候可以简写,也就是初始化的时候不写键,直接写值3初始化结构体变量初始化结构体变量3初始化结构体变量初始化结构体变量package mainimport(fmt)func main()type person struct name string city string age int8 /顺序初始化,每个成员必须初始化 var p1 person p1.name=Go语言 p1.city=深圳 p1.age=18 fmt.Println(p1)/指定成员初始化,没有初始化的成员自动赋值为零 p2:=personname:Golang fmt.Println(p2)运行结果为:Go语言 深圳 18Golang 03初始化结构体变量初始化结构体变量package mainimport(fmt)func main()type person struct name string city string age int8 /顺序初始化,每个成员必须初始化 var p1*person=&personGo语言,深圳,18 fmt.Println(*p1)/指定成员初始化,没有初始化的成员自动赋值为零 p2:=&personname:Golang fmt.Println(*p2)运行结果为:Go语言 深圳 18Golang 03初始化结构体变量初始化结构体变量结构体成员变量的使用结构体普通变量定义结构体普通变量使用(.)运算符操作成员结构体指针变量先定义一个普通结构体变量s,再定义一个指针变量p1存放s的地址,通过指针操作成员:p1.Name或(*p1).Name通过new()实例化一个结构体p2,通过指针操作成员:(*p2).Name或 p2.Name3初始化结构体变量初始化结构体变量package mainimport fmtfunc main()type person struct name string city string age int8 var p person var p1*person p1=&p p1.name=Go语言 p1.city=深圳 (*p1).age=18 fmt.Println(*p1)p2:=new(person)p2.name=Golang p2.city=广东 (*p2).age=20 fmt.Println(*p2)运行结果为:Go语言 深圳 18Golang 广东 2004匿名结构体匿名结构体定义匿名结构体语法格式4匿名结构体匿名结构体匿名结构体的定义匿名结构体,顾名思义,即没有名字的结构体,与匿名函数类似匿名结构体无须type关键字就可以直接使用,匿名结构体在创建的同时也要创建对象匿名结构体的初始化和使用更加简单,无须通过type关键字定义,且不用写出类型名称结构体实例:=struct/匿名结构体定义成员变量1 类型1成员变量2 类型2./成员变量初始化(可选)成员变量1:值1,成员变量2:值2,结构体语法格式4匿名结构体匿名结构体attribute2:=struct Title,Publisher stringPrice float64BookId uintDiscount string唐宋传奇选,人民文学出版社,15.1,566357,6折,谢谢观看谢谢观看

    注意事项

    本文(61396-Go语言程序设计项目化教程(微课版)4.1 结构体.pptx)为本站会员(暗伤)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开