Rust 程序设计语言 简体中文版 1.85.0struct IpAddr { kind: IpAddrKind, address: String, } let home = IpAddr { kind: IpAddrKind::V4, address: String::from("127.0.0.1"), }; let loopback = IpAddrKind::V6, address: String::from("::1"), }; 示例 6-1:将 IP 地址的数据和 IpAddrKind 变体存储在一个 struct 中 这里我们定义了一个有两个字段的结构体 IpAddr:IpAddrKind(之前定义的枚举)类型的 kind 字段和 String 类型 address 字段。我们有这个结构体的两个实例。第一个,home,它的 与之相关联的地址数据是 127.0.0.1。第二个实例,loopback, kind 的值是 IpAddrKind 的另一个变体,V6,关联的地址是 ::1。我们使用了一个结构体来将 kind 和 address 打包在一起,现在枚举变体就与值相关联了。 我们可以使用一种更简洁的方式来表达相同的概念,仅仅使用枚举并将数据直接放进每一个枚 举变体而不是将枚举作为结构体的一部分。IpAddr 枚举的新定义表明了0 码力 | 562 页 | 3.23 MB | 1 月前3
共 1 条
- 1













