Solidity

如何通過高級代表電話更改汽油津貼?

  • August 31, 2021

通過彙編使用 DELEGATECALL 操作碼時,我們可以傳遞特定數量的氣體:

let result := delegatecall(gas(), implementation, 0, calldatasize(), 0, 0)

但高級 DELEGATECALL 沒有這樣的論點:

(bool success, bytes memory returndata) = target.delegatecall(data);

我們如何改變我們給予委託契約的 gas 津貼?

您可以在函式 args 之前使用氣體修飾符(在括號中)指定氣體,例如:

(bool success, bytes memory returndata) = target.delegatecall{ gas: 10000 }(data);

修飾符記錄在這裡:https ://docs.soliditylang.org/en/v0.8.7/types.html#address

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