Gas

address(this).balance 和 gas 的奇怪問題

  • April 18, 2022

我有一個非常簡單的契約,如下所示:

contract Test_Variable{

   uint256 public variable;

   constructor() {
       variable = 100;
   }

   function balanceTest() public {
       variable = address(this).balance;
   }
}

在 Remix 中,我執行 balanceTest 函式。它失敗並報告“氣體不足”。如果我從建構子中刪除“variable = 100”,那麼 balanceTest 可以毫無問題地執行。

對於任何回饋,我們都表示感謝。

Remix IDE 中的 JVM 似乎有問題。事實上,如果您將智能合約部署到 Web3 中,並在Deploy & run transactions部分的 Environment 下拉菜單中,您可以看到您的智能合約有效!

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