Solidity
如何檢索結構數組(bidarray)的長度?
struct BidInfo { uint256 BidId; address payable bidder; uint256 bidAmount; } BidInfo[] public _bidInfo; mapping(uint256 => BidInfo) bidArray;
到目前為止,我正在嘗試檢索bidarray的長度
bidArray[address].length
因此,正如我們在評論中所說,您基本上想要 BidArray 中的映射數量。不幸的是,你不能在 Solidity 中做到這一點。Solidity 中的映射是不可迭代的,也沒有長度。
為了讓您跟踪這一點,您可以手動聲明一個狀態變數,並在您對映射進行推送/刪除操作時更新它。
鐵
uint256 mapLen; // addition to the map then mapLen++; // deletion to the map then mapLen--;