Fallback-Function

為什麼我在這裡需要備份功能?

  • May 18, 2018

我有一個payable將乙太幣轉移到合約的功能。

function test(...) public payable returns (bool) {  
   ...                                                                                               
   address(this).transfer(msg.value); 

   return true;
}

我發現上述方法在契約中沒有備份功能的情況下失敗了。

function () payable public {}

任何人都可以解釋一下嗎?

因為這條線address(this).transfer(msg.value);正在msg.value將乙太幣的價值從合約轉移到它自己。

如果您將乙太幣發送到沒有應付回退功能的合約,它將失敗。

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