Не удалось развернуть простой контракт на твердость через ремикс

Почему Remix не может развернуть простой контракт (упрощенный из книги Mastering Ethereum https://github.com/ethereumbook/ethereumbook/blob/develop/code/Solidity/Faucet2.sol)? -

pragma solidity ^0.4.19;

contract Faucet {
    function withdraw(uint withdraw_amount) public {
        require(withdraw_amount <= 100000000000000000);
        msg.sender.transfer(withdraw_amount);
    }

    function () external payable {}
}

Независимо от того, как я поднимаю gasLimit и / или gasPrice

1 ответ

Решение

Ваш код в порядке (я тоже пробовал сам). Из того, что я вижу выше, вы также отправляете значение вместе с развертыванием. Поскольку вы сами не определили конструктор, вызывается конструктор по умолчанию, который не подлежит оплате. Если вы хотите отправить эфир при развертывании контракта, вы также должны определить платного конструктора.

Другие вопросы по тегам