在不克隆的情况下将一个结构数组映射到Rust中的另一个结构数组

Ramon de Klein

我使用的库具有以下结构:

struct KeyValue1 {
    key: Vec<u8>,
    value: Vec<u8>,
}

fn get() -> Vec<KeyValue1> { /* ... */ }

我需要将此向量转换为具有以下结构的几乎相似的向量:

struct KeyValue2 {
    key: Vec<u8>,
    value: Vec<u8>,
}

为了能够从一种向量转换为另一种向量,我目前使用以下代码:

let convertedItems = items.iter().map(|kv| -> KeyValue2{
  key: key.clone(),
  value: value.clone()
}).collect()

尽管这可行,但它会克隆两个无效的向量。我不再需要原始items向量,因此我想将所有权从转移KeyValue1KeyValue2,但是我还没有找到实现此目的的方法。

椒盐脆饼

使用into_iter()替代iter()items载体,如果你不转换后需要它:

struct KeyValue1 {
    key: Vec<u8>,
    value: Vec<u8>,
}

struct KeyValue2 {
    key: Vec<u8>,
    value: Vec<u8>,
}

fn map_key_values(items: Vec<KeyValue1>) -> Vec<KeyValue2> {
    items
        .into_iter()
        .map(|kv| KeyValue2 {
            key: kv.key,
            value: kv.value,
        })
        .collect()
}

操场

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在Rust中将一个结构映射到另一个结构?

来自分类Dev

是否可以在不克隆整个存储库的情况下从另一个存储库中挑选提交?

来自分类Dev

在不引用内部结构的情况下访问另一个结构中的结构字段

来自分类Dev

创建一个将一个键映射到另一个键的数据结构

来自分类Dev

如何通过“ return(struct a *)b”之类的东西将一个结构映射到另一个结构

来自分类Dev

将一个数组的值映射到另一个

来自分类Dev

将结构投射到另一个

来自分类Dev

将结构投射到另一个

来自分类Dev

按照另一个数组的结构将数组变成数组的数组

来自分类Dev

在不应用的情况下将一个数组插入(拼接?)到另一个数组中

来自分类Dev

std :: transform将一个结构数组复制到另一个

来自分类Dev

AngularJS将数组映射到另一个数组

来自分类Dev

PHP将命名数组映射到另一个命名数组

来自分类Dev

PHP将命名数组映射到另一个命名数组

来自分类Dev

AngularJS将数组映射到另一个数组

来自分类Dev

PHP将一个数组映射到另一个数组,但键位置不同

来自分类Dev

如何将一个数组值映射到另一个数组值

来自分类Dev

将对象数组映射到另一个对象数组中

来自分类Dev

在另一个结构内为一个结构数组分配内存

来自分类Dev

如何将一个结构数组的所有元素添加到另一个结构数组中?

来自分类Dev

c++ - 如何将一个结构体数组的值复制到另一个结构体数组中

来自分类Dev

如何在Swift中从另一个结构编辑一个结构中的数组?

来自分类Dev

如何在另一个结构中初始化结构数组?

来自分类Dev

另一个结构中的前向声明结构的数组

来自分类Dev

如何在C#中PInvoke另一个结构内的结构数组

来自分类Dev

保留内部类型定义:在另一个结构中定义一个结构数组

来自分类Dev

如何将malloc用于已使用malloc创建的另一个结构中的结构数组

来自分类Dev

python-如何将整数数组映射到另一个整数

来自分类Dev

python-如何将整数数组映射到另一个整数

Related 相关文章

  1. 1

    如何在Rust中将一个结构映射到另一个结构?

  2. 2

    是否可以在不克隆整个存储库的情况下从另一个存储库中挑选提交?

  3. 3

    在不引用内部结构的情况下访问另一个结构中的结构字段

  4. 4

    创建一个将一个键映射到另一个键的数据结构

  5. 5

    如何通过“ return(struct a *)b”之类的东西将一个结构映射到另一个结构

  6. 6

    将一个数组的值映射到另一个

  7. 7

    将结构投射到另一个

  8. 8

    将结构投射到另一个

  9. 9

    按照另一个数组的结构将数组变成数组的数组

  10. 10

    在不应用的情况下将一个数组插入(拼接?)到另一个数组中

  11. 11

    std :: transform将一个结构数组复制到另一个

  12. 12

    AngularJS将数组映射到另一个数组

  13. 13

    PHP将命名数组映射到另一个命名数组

  14. 14

    PHP将命名数组映射到另一个命名数组

  15. 15

    AngularJS将数组映射到另一个数组

  16. 16

    PHP将一个数组映射到另一个数组,但键位置不同

  17. 17

    如何将一个数组值映射到另一个数组值

  18. 18

    将对象数组映射到另一个对象数组中

  19. 19

    在另一个结构内为一个结构数组分配内存

  20. 20

    如何将一个结构数组的所有元素添加到另一个结构数组中?

  21. 21

    c++ - 如何将一个结构体数组的值复制到另一个结构体数组中

  22. 22

    如何在Swift中从另一个结构编辑一个结构中的数组?

  23. 23

    如何在另一个结构中初始化结构数组?

  24. 24

    另一个结构中的前向声明结构的数组

  25. 25

    如何在C#中PInvoke另一个结构内的结构数组

  26. 26

    保留内部类型定义:在另一个结构中定义一个结构数组

  27. 27

    如何将malloc用于已使用malloc创建的另一个结构中的结构数组

  28. 28

    python-如何将整数数组映射到另一个整数

  29. 29

    python-如何将整数数组映射到另一个整数

热门标签

归档