Solidity

TypeError:函式中參數的數據位置必須是“記憶體”,但沒有給出

  • June 18, 2019

由於以下錯誤,合約無法在 IDE Remix.中編譯:

TypeError:函式中參數的數據位置必須是“儲存”或“記憶體”,但沒有給出。

version:0.5.6+commit.b259423e

我不知道為什麼會發生這種情況,我還沒有找到任何關於如何修復它的足夠資訊,希望你能幫助我。先感謝您。

錯誤指向此函式:

function bytesToAddress(bytes bys) pure private returns(address addr) {
       assembly {
           addr := mload(add(bys, 20))
       }

它需要是

function bytesToAddress(bytes memory bys) ...

希望能幫助到你。

我認為您需要將它們指定為地址。

https://ethereum.stackexchange.com/a/65609/52189

我有一段程式碼必須從:

user_address.transfer(this.balance); 

堅定地0.5.0

address(uint160(user_address)).transfer(address(this).balance); 

引用自:https://ethereum.stackexchange.com/questions/68326