Solidity
哪個是放置目的地地址的正確位置?
pragma solidity 0.4.21; contract Forwarder { address public destinationAddress; event LogForwarded(address indexed sender, uint amount); event LogFlushed(address indexed sender, uint amount); function Forwarder() public { destinationAddress = msg.sender; } function() payable public { emit LogForwarded(msg.sender, msg.value); destinationAddress.transfer(msg.value); } function flush() public { emit LogFlushed(msg.sender, address(this).balance); destinationAddress.transfer(address(this).balance); } }
請通過回复 HERE1 或 HERE2 blah blah 說出地點,因為它在上面的腳本中。
例如,我希望將合約上的所有 eth 轉發到的目標地址是 0x7e0fE0Bd87F84906bc19438fb5F932e189Dd127e,我應該將它放在腳本的哪個位置?
目標地址是根據誰是基於建構子的合約創建者來設置的:
function Forwarder() public { destinationAddress = msg.sender; }
如果你想
0x7e0fE0Bd87F84906bc19438fb5F932e189Dd127e
成為目標地址,你只需要確保你提到的地址是合約的創建者。您也可以選擇
destinationAddress = msg.sender
用硬編碼地址替換,destinationAddress = 0x7e0fE0Bd87F84906bc19438fb5F932e189Dd127e
但如果您知道如何從所需地址正確啟動合約,則不需要這樣做。