Copyright © 2022-2024 aizws.net · 网站版本: v1.2.6·内部版本: v1.23.3·
页面加载耗时 0.00 毫秒·物理内存 69.6MB ·虚拟内存 1299.5MB
欢迎来到 AI 中文社区(简称 AI 中文社),这里是学习交流 AI 人工智能技术的中文社区。 为了更好的体验,本站推荐使用 Chrome 浏览器。
类似地,解构 struct 如下所示:
fn main() { struct Foo { x: (u32, u32), y: u32 } // 解构结构体的成员 let foo = Foo { x: (1, 2), y: 3 }; let Foo { x: (a, b), y } = foo; println!("a = {}, b = {}, y = {} ", a, b, y); // 可以解构结构体并重命名变量,成员顺序并不重要 let Foo { y: i, x: j } = foo; println!("i = {:?}, j = {:?}", i, j); // 也可以忽略某些变量 let Foo { y, .. } = foo; println!("y = {}", y); // 这将得到一个错误:模式中没有提及 `x` 字段 // let Foo { y } = foo; }
可以加上 match 卫语句(guard) 来过滤分支。fn main() { let pair = (2, -2); // 试一试 ^ 将不同的值赋给 `pair` println!("Tell me about ...
全部【编程教程】内容源自网络,仅供学习用途,若有遗漏或版权任何问题,请及时【联系我们】 ,按下 Ctrl+D 或 ⌘+D 收藏本站。