golang中怎么存储结构体的类型

在 Go 语言中,通常不会直接存储结构体的类型,而是通过其他方式来处理与结构体类型相关的信息。

一种常见的方式是使用接口来处理不同类型的结构体。例如:
package main

import “fmt”

type Animal interface {
Sound() string
}

type Dog struct{}

func (d Dog) Sound() string {
return “汪汪汪”
}

type Cat struct{}

func (c Cat) Sound() string {
return “喵喵喵”
}

func main() {
animals := []Animal{Dog{}, Cat{}}
for _, animal := range animals {
fmt.Println(animal.Sound())
}
}

在上述示例中,定义了一个 Animal 接口,Dog 和 Cat 结构体实现了该接口。然后通过接口切片 []Animal 来存储不同类型的结构体实例。

如果您是想以某种方式标识结构体的类型,例如为了序列化或数据存储,可以为结构体添加一个类型字段来表示其类型。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值