2

我正在使用solidity ^0.8.7。当我尝试创建一个包含映射的结构时,我修改了一个错误:“无法构造包含(嵌套)映射的结构。” 我认为这与 0.7.0 版中的文档更改有关。但我找不到解决方案。

编码:

// SPDX-License-Identifier: MIT
pragma solidity ^0.8.7;

...

 struct Transaction {
        address to;
        uint value;
        bytes data;
        bool executed;
        mapping(address => bool) isConfirmed;
        uint numConfirmations;
    }

...

 function submitTransaction (address _to, uint _value, bytes memory _data) public onlyOwner{
        
        uint txIndex = transactions.length;
        
        transactions.push(Transaction({to: _to, value: _value, data: _data, executed: false, numConfirmations: 0}));
            
            emit SubmitTransaction(msg.sender, txIndex, _to, _value, _data);
    }

...

使用旧版本的 Solidity 编译它没有问题。

4

0 回答 0