Solidity

如何添加到結構中的嵌套數組

  • February 17, 2022

我無法將元素添加到 struct struct D { string name; 中的數組中。地址鍵;} struct Aone { 字元串輔助;乙

$$ $$泡罩;D$$ $$清單;} 結構 B{ 字元串 bdesc; 布爾狀態;C$$ $$列表;}

struct C{
   uint createTime;
   string cdesc;
   bool rstatus;
   string ctype;   
}

映射(字元串=> Aone)A;

我需要根據提供的功能 rptC(string _aid, string _c) public { B 添加項目到 struct c

$$ $$儲存 bhist = A$$ _aid $$.blist;

       if(bhist.length > 0 && bhist[bhist.length-1].bstatus==false) {
           bhist[bhist.length-1].clist.push(C(now,_c,false,""));
       } else if(bhist[bhist.length-1].bstatus==true) {
           bhist[bhist.length].clist.push(C(now,_c,false,""));
       } else {
           bhist[0].clist.push(C(now,_c,false,""));
       }
}

我不斷收到無效的 json rpc 錯誤。我是 Solidity 新手,需要幫助

謝謝

clist.push(c(now,_problem,false,"")

您正在推動具有 4 個欄位的 ac(不應該是 C 嗎?)結構,但該結構只有 3 個欄位。

這很難用你的原始碼的這個簡短部分來回答你,但是你確定bhist結構在添加之前已經存在clist嗎?

引用自:https://ethereum.stackexchange.com/questions/47643