我想将结构类型的集合转换为结构的成员类型的集合。
struct Foo { a: String, b: i64, c: f64, } fn main() { let foo: Vec<Foo>; let (a, b, c): (Vec<&String>, Vec<&i64>, Vec<&f64>) = foo.iter(); // Not sure how. }
字符串
shstlldc1#
可以使用Iterator::unzip():
Iterator::unzip()
let foo: Vec<Foo>; let ((a, b), c): ((Vec<&str>, Vec<i64>), Vec<f64>) = foo.iter().map(|v| ((v.a.as_str(), v.b), v.c)).unzip();
1条答案
按热度按时间shstlldc1#
可以使用
Iterator::unzip()
:字符串