Solidity
Solidity 中的拍賣項目:為什麼我會收到此程式碼的“VM 錯誤:無效操作碼”?
我正在嘗試做一個拍賣項目,這部分讓我很煩。我無法弄清楚導致以下錯誤消息的問題是什麼:“VM 錯誤:無效的操作碼。”。即使我做這個簡單的智能接觸,我也會收到同樣的錯誤資訊。因此,如果有人能弄清楚所提供的智能合約有什麼問題,我會很高興。謝謝!
// SPDX-License-Identifier: UNLICENSED pragma solidity >=0.6.0 < 0.7.0; contract testing { mapping(address => uint256[]) fundsByBidder; mapping(uint256 => uint256) newBidToGoods; function update(uint256 _goodsId) public payable { newBidToGoods[_goodsId] = fundsByBidder[msg.sender][_goodsId] + msg.value; } function show(uint256 _goodsId) public view returns(uint256) { return newBidToGoods[_goodsId]; } }
因為
fundsByBidder[msg.sender].length
不大於_goodsId
。