(移动)嵌套向量上的push_back

我的数据类型定义为

let digests: vector<vector<u8>>;

在此digests矢量中,如果我尝试使用push_back插入另一个矢量,如下所示:

let digest1: vector<u8>;
let digests: vector<vector<u8>>;

digest1 = h"00";
digests = Vector.empty<vector<u8>>();

Vector.push_back<vector<u8>>(
                &mut digests,copy(digest1)
            );

push_back上测试失败,并出现以下错误。

[106] DiscardedTransaction(TransactionOutput { write_set: WriteSet(WriteSetMut { write_set: [] }),events: [],gas_used: 0,status: Discard(VMStatus { major_status: UNKNOWN_INVARIANT_VIOLATION_ERROR,sub_status: None,message: Some("vector elem type mismatch -- expected Vector(U8),got General([])") }) })

这个错误让我有些失落。另外,有没有更好的选择来实现嵌套向量?

我正在使用移动中间表示形式来编写以上内容

hopefulmousehaha 回答:(移动)嵌套向量上的push_back

已将其标识为错误,并在以下位置进行了修复:https://community.libra.org/t/push-back-on-a-vector-with-other-vectors/2706/3

本文链接:https://www.f2er.com/2524437.html

大家都在问