Solidity

在solidity中嘗試第一個傳輸合約

  • December 13, 2020

所以我一直在嘗試使用 Solidity 和 Remix,我想要一個簡單的 while 循環到 .transfer 和 .balance 方法。雖然能夠部署合約,但我似乎無法發送程式碼中指定的 10 個乙太幣。任何幫助將非常感激。這是程式碼:

pragma solidity ^0.5.0;

   contract testTransfer {
       
       function Transfer () public payable {
       
       address payable x = 0x5B38Da6a701c568545dCfcB03FcB875f56beddC4;
       address payable myAddress = msg.sender;
       if (x.balance < 100 && myAddress.balance >= 10) x.transfer (10 ether);
       }
   }

一個不同的版本,其中myAddress = this; 吐出合約不能隱式轉換為預期類型的錯誤

x.transfer(10 ether)從合約轉移到x. 如果合約沒有足夠的乙太幣,它將恢復。

要獲取合約的地址,請使用address payable myAddress = payable(address(this)).

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