Solidity
轉賬到乙太坊賬戶或智能合約的區別?
將乙太幣發送到使用者帳戶或智能合約之間有區別嗎?例如:
contract ThisIsAContract{ function() public payable {} }
現在我打電話(虛擬碼)
address(0x0).transfer(payout);
並且
address(ThisIsAContract.address).transfer(payout);
兩者都好嗎?他們的行為是否相同?
唯一的區別是與非合約的交易總是花費 21k(除非您包含 tx 數據),而與合約的交易將在該地址執行字節碼,這可能花費超過 21k。因此,當您轉移到合約時,您應該始終進行 gas 估算並手動設置 gas 數量。