gpt4 book ai didi

rust - 是否可以匹配结构以进行比较?

转载 作者:行者123 更新时间:2023-12-03 11:45:35 25 4
gpt4 key购买 nike

How to match struct fields in Rust?类似,是否可以在不物理写出字段的情况下匹配像Default这样的结构?我不想不断地写出这些领域。

类似于以下内容:

let someValue = Struct { /* ... */ };
match someValue {
Struct::default() => println!("Default!"),
_ => println!("Not Default"),
}

这给出了一个错误。

我做了一些 testing on the Rust Playground,但是最后只遇到了文档中描述的 matching named variables问题。

比较多个结构的最佳解决方案是什么?是否使用 #[derive(PartialEq)]和if语句?

最佳答案

Rust的模式不是可比较的值。它们与变量分配(解构)更相关。

可以使用“匹配防护”语法:

match some_value {
tmp if tmp == Struct::default() => /* it's default-like-ish */
}

关于rust - 是否可以匹配结构以进行比较?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61759460/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com