Почему Solidity предлагает мне реализовать функцию эфира приема, когда у меня есть резервная функция? - PullRequest
0 голосов
/ 08 января 2020

Недавнее изменение в Solidity изменило формат резервной функции с just function () на fallback (), что довольно приятно для начинающих, чтобы понять, что происходит, но у меня есть вопрос о том, что компилятор дает мне, когда Я реализую такой запасной вариант.

Например, фрагмент кода из моего проекта:

pragma solidity ^0.6.1;

contract payment{
    mapping(address => uint) _balance;

    fallback() payable external {
        _balance[msg.sender] += msg.value;
    }
}

Все идет хорошо, но компилятор предлагает:

Warning: This contract has a payable fallback function, but no receive ether function.
Consider adding a receive ether function.

Что это значит под функцией получения эфира? Я попытался найти его, и многие примеры, которые я смог найти, это просто еще одна резервная функция.

Я использую версию 0.6.1 + commit.e6f7d5a4

1 Ответ

0 голосов
/ 10 января 2020

После еще нескольких копаний я понял, что в новейшей версии Solidity функция отката была разделена на receive () и fallback (). Это новое изменение компилятора.

...