Solidity Constants 与 Immutable

阅读 129

2022-12-01

常量 Constants

常量是不能修改的变量。

它们的值是硬编码的, 使用常量可以节省 gas 成本。

// SPDX-License-Identifier: MIT
pragma solidity ^0.8.13;

contract Constants {
// coding convention to uppercase constant variables
address public constant MY_ADDRESS = 0x777788889999AaAAbBbbCcccddDdeeeEfFFfCcCc;
uint public constant MY_UINT = 123;
}

不可变变量 Immutable

不可变变量就像常量。不可变变量的值可以在构造函数中设置,但之后不能修改。

// SPDX-License-Identifier: MIT
pragma solidity ^0.8.13;

contract Immutable {
// coding convention to uppercase constant variables
address public immutable MY_ADDRESS;
uint public immutable MY_UINT;

constructor(uint _myUint) {
MY_ADDRESS = msg.sender;
MY_UINT = _myUint;
}
}

精彩评论(0)

0 0 举报