前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >4.Go-结构体,结构体指针和方法

4.Go-结构体,结构体指针和方法

作者头像
zhang_derek
发布于 2019-08-07 07:35:05
发布于 2019-08-07 07:35:05
1.2K00
代码可运行
举报
文章被收录于专栏:有趣的django有趣的django
运行总次数:0
代码可运行

4.1.结构体

结构体:讲一个或多个变量组合到一起形成新的类型,这个类型就是结构体,结构体是值类型

定义结构体和赋值

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
//Learn_Go/main.go
package main

import "fmt"

type People struct {
	Name string
	Age int
}

func main()  {
	var peo People
	fmt.Println(peo)           //{ 0}
	fmt.Printf("%p",&peo)     //0x110040f0

	//赋值
	//第一种
	peo = People{"derek",20}
	fmt.Println(peo)      //{derek 20}
	//第二种
	peo2 := People{Age:12,Name:"jack"}
	fmt.Println(peo2)     //{jack 12}

	//第三种
	peo.Name = "alice"
	peo.Age = 25
	fmt.Println(peo)     //{alice 25}
}

4.2.结构体指针

由于结构体是值类型,在方法传递时希望传递结构体地址,可以使用结构体指针完成

可以结合new()函数创建结构体指针

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
//Learn_Go/main.go
package main

import "fmt"

type People struct {
	Name string
	Age int
}

func main()  {
	peo := new(People)
	fmt.Println(peo)              //&{ 0}
	fmt.Println(peo == nil)       //false

	peo.Name = "derek"
	peo.Age = 22
	fmt.Println(peo)              //&{derek 22}

	peo2 := peo
	fmt.Println(peo2)            //&{derek 22}

	peo2.Name = "Jack"
	fmt.Println(peo, peo2)       //&{Jack 22} &{Jack 22}
}

4.3.方法

方法和函数语法比较像,区别是函数属于包,通过包调用函数,而方法属于结构体,通过结构体变量调用

默认是函数,隶属于包,所以需要添加标识,告诉编译器这个方法属于哪个结构体 

 (1)创建方法

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
//Learn_Go/main.go
package main

import "fmt"

type People struct {
	Name string
	Weight int
}

func (p People) run() {
	fmt.Println(p.Name,"正在跑步,当前体重为:",p.Weight)
}

func main()  {
	peo := People{"derek",120}
	peo.run()       //derek 正在跑步,当前体重为: 120
}

(2)修改值,用指针

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
//Learn_Go/main.go
package main

import "fmt"

type People struct {
	Name string
	Weight int
}

func (p *People) run() {
	fmt.Println(p.Name,"正在跑步,当前体重为:",p.Weight)
	//运行一次run方法,体重减去1
	p.Weight -= 1
}

func main()  {
	peo := People{"derek",120}
	peo.run()       //derek 正在跑步,当前体重为: 120
	fmt.Println("跑完步后的体重为:",peo.Weight)        //跑完步后的体重为: 119
}
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2019-08-05 ,如有侵权请联系 cloudcommunity@tencent.com 删除

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

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

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

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
html文件怎么转换成word文件_word转换成网页文件格式不对
回答:1、打开 HTML 文件,点击菜单栏 文件→使用 Microsoft Office Word 编辑,之后系统会自动打开 Word 并显示HTML文件的内容,这是保存即可。
全栈程序员站长
2022/11/18
7.1K0
jpg转pdf:图片jpg格式如何转换成pdf?深度解析这8款软件!值得收藏!
将图片转换成PDF(便携式文档格式)已成为常见的需求,如果需要传身份证回家证明材料,证件办理打印等。JPG作为一种广泛使用的图片格式,具有较高的压缩率和较好的图像质量,但在需要共享、存档或保护图像时,转换为PDF格式则显得更为方便和高效。下面我们就全面分析一些这两种格式之间的区别和转换方法。
科技测评师001
2024/08/09
2660
jpg转pdf:图片jpg格式如何转换成pdf?深度解析这8款软件!值得收藏!
这还是我认识的WPS吗?这些功能也太可了吧!
没错,WPS可不是什么模仿微软的盗版软件出身,人家可是金山早在1988年就自主研发出来的办公软件!
程序员晚枫
2022/12/09
1.6K0
这还是我认识的WPS吗?这些功能也太可了吧!
PDF如何转换成图片格式,这三种方法超级有效
在我们的工作中经常会遇到一些PDF格式的文件,而且这个格式的文件在办公中很受欢迎哦,很方便人们阅读,但是也会遇到一些问题,比较喜欢PDF中的图片,想保存下来,PDF又很难进行编辑,那么PDF如何转换成图片格式?今天呢就来为大家介绍几种简单的方法哦,跟随我来学习吧。
高效办公
2019/05/13
3K0
PDF如何转换成图片格式,这三种方法超级有效
Word--快速提取所有图片
特殊情况下,我们需要把一个Word报告中的所有图片提取出来,一张一张的复制会比较耗时且很麻烦,这里教大家一个很巧妙的技巧,快速把Word报告中的所有图片一次提取出来,简单易学,一看就会。
用户6184845
2019/09/24
1.5K0
Word--快速提取所有图片
XPS文件转换成PDF[通俗易懂]
XPS是XML PaperSpecification(XML文件规格书)的简称,是一种电子文件格式, 它是微软公司开发的一种文档保存与查看的规范,关联的阅读器是XPS Viewer。
全栈程序员站长
2022/09/05
1.9K0
Word转EXcel格式不变,这点你get到了吗?
在工作中,我们接触比较多的就是各种文档之间的相互转换,如Word转PDF,或者是Word转EXcel,很多人都有这样一个疑问,word转EXcel怎么转换格式才不会变化,今天呢就来给大家分享Word转EXcel格式不变的方法,跟随我来学习吧。
高效办公
2019/05/06
2.2K0
Word转EXcel格式不变,这点你get到了吗?
怎样把JPG转换成PDF?这个方法你知道吗
在网络发展的道路上,图片是突破文字的束缚的另一种格式,发展至今,图片也变得有更多的可能,那么怎么把JPG转换成PDF?今天就分享给你们简单的两种方法
高效办公
2019/06/25
1.4K0
怎样把JPG转换成PDF?这个方法你知道吗
使用WPS自动化转换办公文档: 将Word, PowerPoint和Excel文件转换为PDF
在数字化办公的时代,文档的格式转换成为了日常工作的常态。借助WPS的强大功能,我们能轻松实现Word, PowerPoint和Excel文件到PDF的转换,进而满足不同场景的需求。本文将详细介绍如何利用Python语言和WPS的COM接口实现办公文档的自动化转换,同时也会探讨如何保证转换过程中字体的准确呈现。通过本文的指导,你将能够建立自己的文档转换工具,提升办公效率,减少重复劳动。
猫头虎
2024/04/09
6980
【游戏开发】Excel表格批量转换成CSV的小工具
  在工作的过程中,我们有时可能会面临将Excel表格转换成CSV格式文件的需求。这尤其在游戏开发中体现的最为明显,策划的数据文档大多是一些Excel表格,且不说这些表格在游戏中读取的速度,但就论占用内存来说,同样的数据量Excel表格所占用的内存要远远大于CSV,因此将Excel转换成CSV势在必行。如果单单转换一个Excel表格还好,直接另存为就搞定的,但是如何将一个文件下的N个Execl表格转成CSV呢?今天马三就来和大家一起用Python撸一个Excel表格批量转换CSV的小工具——Xls2CSV。
马三小伙儿
2018/09/12
2.2K0
【游戏开发】Excel表格批量转换成CSV的小工具
纯Python 实现 Word 文档转换 Markdown
随着 SaaS 服务的流行,越来越多的人选择在各个平台线上编写文档,制作表格并进行分享。
州的先生
2021/01/05
6K0
纯Python 实现 Word 文档转换 Markdown
这2个PDF转Word免费不限页数工具很多人没用过
很多人在搜索下载过PDF转换器的小伙伴都会有一个灵魂拷问:难道就没有免费还没页数限制的PDF转Word的工具吗?小编经过不断的对比和试用,找到以下两款好用免费的工具,相信总有一个你能用上。
全栈程序员站长
2022/08/10
3.4K1
这2个PDF转Word免费不限页数工具很多人没用过
在线快速将pdf转换成word[通俗易懂]
处理同样1000个PDF文件的格式转换,在线PDF转换成Word转换器比普通PDF转换器快8-12倍以上,是一款全自动化的转换模式,为用户提供了高质量的PDF转换服务的同时,大大节省了转换过程中所消耗的时间。今天小编给你支招的这款 pdf转换成word转换器在线是专业转换网站,能够给你多种格式转换的选择。
全栈程序员站长
2022/08/15
7.7K1
在线快速将pdf转换成word[通俗易懂]
ts文件怎么合并转换成mp4?
ts文件怎么合并转换成mp4?可能不少人对ts这种文件格式比较陌生吧,这是一种视频文件格式,全称是MPEG2-TS,属于一种高清视频封装格式,一些高清摄像机拍摄的视频就是这个格式的,平时我们接触的机会可能会比较少。所以这种格式的视频使用起来可能会受到限制,电脑自带的视频播放器不支持这种视频的播放。
全栈程序员站长
2022/11/17
2.1K0
ts文件怎么合并转换成mp4?
如何优雅地生成那些花里胡哨的复杂样式 Excel 文件?
产品的目的其实就是统一管控各业务组文件下载功能(包括一些海量数据的导出,文件合并上传等),项目组不用自己再去实现各式各样的文件(PDF, Word, Excel)生成, 统一对接下载中心,由下载中心统一完成文件的生成、合并、上传、下载流程。
JAVA葵花宝典
2019/06/13
2.6K0
个人永久性免费-Excel催化剂功能第88波-批量提取pdf文件信息(图片、表格、文本等)
在日常工作中,为了保护数据免于被二次利用和为了在文件分发过程中,可以不受其他电脑因为软件版本不同等原因导致文件不能打开或打开格式版面大变形,将要分发的文件,无论是Excel、Word或PPT,转为pdf格式,是一个不错的主意。
Excel催化剂
2021/08/19
1.3K0
think-cell chart系列20——使用建议及附加功能
今天是think-cell chart系列收尾篇——使用建议及附加功能。 由于think-cell chart图表插件是office平台的第三方插件,而且图表制作过程及风格都自成体系、拥有独立编辑菜单,数据组织结构规则与excel图表截然不同,这也决定了它的适用性和普及性相对受限,所以使用该插件制作图表的后期处理需要特别注意: 注意事项: 在发布或者分享你的think-cell chart数据报告之前,请务必确保对方系统中安装有think-cell chart插件工具,否则对方打开你的ppt演示文稿,
数据小磨坊
2018/04/10
2.6K0
think-cell chart系列20——使用建议及附加功能
推荐5款快速制作完美PPT的办公软件
哈喽,大家好,今天为大家推荐几款可以快速制作完美PPT的办公软件,相信大家在工作中都遇到过制作PTT的难题,到底哪些软件可以快速制作完美的PPT呢?跟随小编的脚步往下看。
用户10264843
2023/01/13
3.3K0
如何将自己输入的文字转换成语音?这里的方法超级简单
在我们日常的生活中会遇到很多的问题,特别是在自己需要循环播放一语音的时候,大家也听过超市里或是是在商场时播放的叫卖语音,这是需要将自己想要广播的内容转换成语音来播放,那么如何将自己输入文字转换成语音?那么今天小编就来给大家分享几个超级简单的方法,一起来看看吧。
高效办公
2019/03/22
4.2K0
如何将自己输入的文字转换成语音?这里的方法超级简单
Office使用的一些小技巧
旧版的格式使用的存储方法对跨软件(如 MS Office 与 WPS Office)兼容性,性能等都不是太好。如果你在使用的版本默认能支持新版的文件格式的话请优先使用新版。新版的格式不仅能以更小的空间保存同样的内容,还可以利用统一的文件内容排布来实现跨软件的兼容性。同时,新版格式分离成了包含宏和不含宏的两个格式,可以更好的保证安全性。
幻影龙王
2021/09/08
5370
推荐阅读
相关推荐
html文件怎么转换成word文件_word转换成网页文件格式不对
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档