Go语言学习(4)

type
通过关键字type可以自定义类型

package main

import "fmt"
//newint 是一个全新类型,但是它具有int类型的特性。
type newint int

func main() {
	var p newint
	fmt.Println(p)
}

输出:

0

Process finished with exit code 0

类型别名:

type rune = int32
type byte = uint8

struct
通过关键字struct来定义一个结构体。

结构体在go语言中,就像其他语言中的类的概念。但是在go语言中没有类,结构体在go语言中比类更有灵活性和扩展性。

基本结构如下:

type 类型名 struct {
	字段名 字段类型
	字段名 字段类型
	...
}

类型名在同一包里是唯一的。
字段名在同一结构体中是唯一的。
同样类型的字段可以写在同一行,字段名用逗号(,)分割。

举个栗子:

package main

import "fmt"

type person struct {
	name string
	age int
}

func main() {
	//结构体实例化,开始分配内存。
	var p person
	p.name = "tom"
	p.age = 24
	fmt.Println(p)
}

输出:

{tom 24}

Process finished with exit code 0

匿名实例化

package main

import "fmt"


func main() {
	var p struct { //区别在这
		name string
		age int
	}
	p.name = "tom"
	p.age = 24
	fmt.Println(p)
}

输出与上个栗子结果相同。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值