【发布时间】:2015-06-22 10:34:58
【问题描述】:
我正在尝试删除以下示例中的重复项:
struct User {
reference: String,
email: String,
}
fn main() {
let mut users: Vec<User> = Vec::new();
users.push(User {
reference: "abc".into(),
email: "test@test.com".into(),
});
users.push(User {
reference: "def".into(),
email: "test@test.com".into(),
});
users.push(User {
reference: "ghi".into(),
email: "test1@test.com".into(),
});
users.sort_by(|a, b| a.email.cmp(&b.email));
users.dedup();
}
我收到了错误
error[E0599]: no method named `dedup` found for type `std::vec::Vec<User>` in the current scope
--> src/main.rs:23:11
|
23 | users.dedup();
| ^^^^^
|
如何通过email 值从users 中删除重复项?我可以为struct User 实现dedup() 函数还是必须做其他事情?
【问题讨论】:
标签: rust