go语言基础到提高(10)- 包及方法
src\2.go
package mainimport ("test"
)func main() {test.Info()
}
src\test\test.go
package testimport ("fmt"
)func Info() {fmt.Println("hello")
}
输出:
hello
另外一个复杂的例子
src\2.go
```go
package mainimport ("team"
)func main() {myteam := team.InitTeam("梦之队")myteam.AddMember("lisi", "艺术2班", 28, "油画")myteam.AddMember("wangwu", "艺术1班", 28, "动漫")myteam.Info()
}
src\team\team.go
package teamimport ("fmt""team/student"
)var myTeam *TeamInfotype TeamInfo struct {Name stringCount intmembers [20]*student.StInfo
}func InitTeam(name string) *TeamInfo {myTeam = new(TeamInfo)myTeam.Name = namemyTeam.Count = 0var i intfor i = 0; i < 10; i++ {myTeam.members[i] = nil}return myTeam
}func (*TeamInfo) AddMember(name string, class string, age int, skill string) {newMember := student.InitStd(myTeam.Count, name, class, age, skill)myTeam.members[myTeam.Count] = newMembermyTeam.Count++
}func (*TeamInfo) Info() {fmt.Println("队名", myTeam.Name)fmt.Println("成员数量", myTeam.Count)var i intfor i = 0; i < myTeam.Count; i++ {fmt.Println("成员", i+1, ":", *myTeam.members[i])}
}
src\student\student.go
package studenttype StInfo struct {Id intName stringClass stringAge intSkill string
}func InitStd(id int, name string, class string, age int, skill string) *StInfo {myStInfo := &StInfo{Id: id, Name: name, Class: class, Age: age, Skill: skill}return myStInfo
}
队名 梦之队
成员数量 2
成员 1 : {0 lisi 艺术2班 28 油画}
成员 2 : {1 wangwu 艺术1班 28 动漫}
注意需要开放给其他包调用的方法,首字母需要大写。
go语言基础到提高(10)- 包及方法相关推荐
- java 解析数据包_一种基于Java语言的网络通讯数据包解析方法与流程
本发明涉及网络通讯领域,特别涉及一种基于Java语言的网络通讯数据包解析方法. 背景技术: 计算机系统和网络的大量普及使用使全球跨入了信息化时代.但是,正由于现代社会中几乎一切都在"计算机化 ...
- go get 的不再src目录中_GO语言基础进阶教程:包的使用
Go语言使用包(package)这种语法元素来组织源码,所有语法可见性均定义在package这个级别,与Java .python等语言相比,这算不上什么创新,但与C传统的include相比,则是显得& ...
- 经典c语言基础代码大全,10个经典的C语言面试基础算法及代码
<10个经典的C语言面试基础算法及代码>由会员分享,可在线阅读,更多相关<10个经典的C语言面试基础算法及代码(24页珍藏版)>请在人人文库网上搜索. 1.10个经典的C语言面 ...
- Go语言基础进阶—程序结构—包和文件
基于Go语言圣经总结,适合有一定基础的同学,对于提升Go语言的掌握有很大的帮助 建议放大观看
- go语言基础到提高(13)-同步
defer的主要作用就是在当前函数或者方法返回之前调用一些用于收尾的函数,例如关闭文件描述符.关闭数据库连接以及解锁资源. 只需要在被调用的函数前边加上go关键字,就可以轻松的开启并发执行. pack ...
- go语言基础到提高(7)-数组
package main import("fmt")func main(){var sz1 [5]intfor i:=1;i<5;i+=1{sz1[i]=i*5}sz2:=[ ...
- go语言基础到提高(3)-变量
package main import("fmt" ) func main(){var x intx=100var y int =100z:=100.11// z:=102.12 ...
- go语言基础到提高(1)-hello,world
建立一个目录,然后在里面编辑程序1.go $vim 1.go package main func main(){print("hello,world\n") } 开始编译运行 $ ...
- R语言基础入门(10)之矩阵和数组
目录 1.矩阵 创建矩阵 查看矩阵的行与列数 转置 2.矩阵子集 3.矩阵行列命名 4.命名后取子集 5.逻辑下标取子集 6.正整数向量的矩阵取子集 7.返回对角线向量 8.创建单位矩阵 9.cbin ...
最新文章
- 2022-2028年中国塑料人造革行业市场研究及前瞻分析报告
- python语言命令大全-Python常用命令之集合
- Mysql的体系结构概览
- C# selecd,new,virtual,abstract与override
- html背景图片自适应纵向,HTML5 body设置全屏背景图片 如何让body的背景图片自适应整个屏----实战经验...
- GPL与LGPL的区别
- 1020 月饼 (25分)
- laravel项目中css样式表的背景图片不显示
- ollyice的学习
- JavaScript强化教程——数组的基本处理函数
- mysql-bin 查看_Mysql Binlog数据查看的方法详解
- micropython入门教程-我的MicroPython入门之路
- java项目实现ldap认证
- 大数据入门教程系列之Hbase安装(伪分布式)
- MySQL中int(M)和tinyint(M)数值类型中M值的意义
- 一张A4纸打印多张财务凭证(分栏报表)
- CRC校验——以SHT30温湿度传感器为例(内附SHT30的驱动代码)
- python 天勤 金叉 编程代码_Python量化交易工具之#39;自适应#39;跟踪止盈算法,进阶必看!...
- 揭秘IBM架构设计方法论 —— Solution Design I
- 好系统教你如何更改Windows 10中的用户帐户控制(UAC)设置