从对结构的引用中获取对结构域的引用的所有方法让我不知所措。这些是我现在所知道的方式:
foo.bar
其中哪些是“首选方式”?我假设像{{1}}这样的字段访问是单个字段和模式匹配的首选,以便一次性获得多个字段,但是我不清楚我在上面列出的多种方式中的每种情况下应使用哪种方式。
答案 0 :(得分:5)
没有理由避免直接访问
let bar1 = &foo.bar;
这更容易编写和阅读。您无需在这里进行模式匹配。
模式匹配是一个附加工具,它基本上解决了两种问题:
let (a, b) = c;
while let
,if let
,match
臂中处于有条件(“可辩驳”)的状态请参见All the places patterns can be used。
正式禁止您的某些声明。 Clippy会警告您the ref ones。