Solidity

為什麼在轉移 eth 的同時轉移 gas?

  • May 3, 2022

我在看這個影片:https ://www.youtube.com/watch?v=mlPc3EW-nNA&list=PLO5VPQH6OWdVQwpQfw9rZ67O6Pjfo6q-p&index=39&t=59s

它顯示了 3 種轉移 eth 的方法。我想知道為什麼氣體被轉移到接收器?天然氣不應該支付給交易礦工嗎?

我可能對這裡的 2-3 個概念感到困惑並將它們混合在一起。有人可以幫我理解嗎?

當使用 call() 將乙太幣發送到另一個合約時,gas 被轉移到接收者合約以執行回退功能。

例如:

contract ReceiverContract{
 receive() external payable {
   //When receive ethers, update state .... 
 }
}

(bool success, bytes memory data) = receiverContract.call{value: 100}("");將所有的gasleft轉發給receiverContract.receive()函式。在這種情況下,它將使用該氣體來支付交易礦工執行接收()函式的費用。

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