[英]Why is there no error comparing Vector and Array in Rust?
我知道 Array 和 Vector 在 Rust 语言中是不同的类型,但是我想知道为什么将两者进行比较没有错误。
// Rust Programming Language
fn main() {
let vec = vec!["a", "b", "c"]; // Vector
let arr = ["a", "b", "c"]; // Array
println!("{}", vec == arr); // true!
}
因为Vec<T>
实现PartialEq<[T; N]>
PartialEq<[T; N]>
,允许您将向量与数组进行比较。
您可以通过实现PartialEq
trait 来重载 Rust 中的相等运算符,它需要一个(可选,默认为Self
)泛型参数来允许您为左侧( Self
,实现类型)和右侧(泛型参数,默认相同)。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.