Go | 使一个结构体类型不可比较
2023-08-08
可以放置一个非导出的零尺寸的不可比较类型的字段在结构体类型中以使此结构体类型不可比较
结构体
type T struct {
dummy [0]func()
AnotherField int
}
使用
var x map[T]int // 编译错误:非法的键值类型
var a, b T
_ = a == b // 编译错误:非法的比较
可以放置一个非导出的零尺寸的不可比较类型的字段在结构体类型中以使此结构体类型不可比较
结构体
type T struct {
dummy [0]func()
AnotherField int
}
使用
var x map[T]int // 编译错误:非法的键值类型
var a, b T
_ = a == b // 编译错误:非法的比较