第九节——结构体

Posted 想学习安全的小白

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了第九节——结构体相关的知识,希望对你有一定的参考价值。

结构体的定义

  1. 定义格式:
type 类型名 struct 
    字段名 字段类型
    字段名 字段类型
    …

  1. 例子:
type person struct 
	name string
	city string
	age  int8

结构体实例化

  1. 格式:var 结构体实例 结构体类型
  2. 例子:
type person struct 
	name string
	city string
	age  int8


func main() 
	var p1 person
	p1.name = "沙河娜扎"
	p1.city = "北京"
	p1.age = 18
	fmt.Printf("p1=%v\\n", p1)  //p1=沙河娜扎 北京 18
	//第二种方法
	p5 := person
	name: "小王子",
	city: "北京",
	age:  18,
	

自定义结构体的构造函数

  1. 定义:Go语言的结构体没有构造函数,我们可以自己实现。
  2. 举例:
//Person 结构体
type Person struct 
	name string
	city string
	age  int8

//定义构造函数
func newPerson(name, city string, age int8) *person 
	return &person
		name: name,
		city: city,
		age:  age,
	

//调用
p9 := newPerson("张三", "沙河", 90)
fmt.Printf("%#v\\n", p9) //&main.personname:"张三", city:"沙河", age:90

结构体中的方法

  1. 定义:Go语言中的方法(Method)是一种作用于特定类型变量的函数。这种特定类型变量叫做接收者(Receiver)。接收者的概念就类似于其他语言中的this或者 self。
  2. 格式:
func (接收者变量 接收者类型) 方法名(参数列表) (返回参数) 
    函数体

  1. 举例:
//Person 结构体
type Person struct 
	name string
	age  int8

//Dream Person做梦的方法
func (p Person) Dream() 
	fmt.Printf("%s的梦想是学好Go语言!\\n", p.name)


func main() 
	p1 := NewPerson("小王子", 25)
	p1.Dream()

以上是关于第九节——结构体的主要内容,如果未能解决你的问题,请参考以下文章

第九节——Collection集合

OC第九节 类的扩展

JavaWeb学习笔记(狂神版)--- 第九节 Cookie与Session

网络层-第九节:虚拟专用网与网络地址转换

OC第九节——协议与代理

传输层-第九节:TCP报文段的首部格式