Rust 程序设计语言 简体中文版 1.85.0表达式中用模式匹配,针对不同的枚举值编写相 应要执行的代码。最后会介绍 if let,另一个简洁方便处理代码中枚举的结构。 114/562Rust 程序设计语言 简体中文版 枚举的定义 结构体给予你将字段和数据聚合在一起的方法,像 Rectangle 结构体有 width 和 height 两个 字段。而枚举给予你一个途径去声明某个值是一个集合中的一员。比如,我们想让 Rectangle 是一些形状的集合,包含 世界各地的新闻故事,而结构体 SocialPost 最多只能存放 280 个字符的内容,以及指示该帖 子是新发布的、转发的还是对另一条帖子的回复的元数据。 我们想要创建一个名为 aggregator 的多媒体聚合库用来显示可能储存在 NewsArticle 或 SocialPost 实例中的数据摘要。为了实现功能,每个结构体都要能够获取摘要,这样的话就 可以调用实例的 summarize 方法来请求摘要。示例 签名的定义完全一致的 summarize 方法。 trait 体中可以有多个方法:一行一个方法签名且都以分号结尾。 为类型实现 trait 现在我们定义了 Summary trait 的签名,接着就可以在多媒体聚合库中实现这个类型了。示例 10-13 中展示了 NewsArticle 结构体上 Summary trait 的一个实现,它使用标题、作者和创建的 位置作为 summarize 的返回值。对于 SocialPost0 码力 | 562 页 | 3.23 MB | 23 天前3
共 1 条
- 1













