【solidity入门】8. 常数 constant & immutable

常量constant & 不变量immutable

  1. 状态变量声明这两个关键字之后,不能在合约后更改数值,且节省gas、提升合约安全性
  2. 只有数值变量可以声明 constant 和 immutable
  3. string 和 bytes 可以声明 constant,但不能为immutable

constant

constant变量必须在声明时初始化,且之后再也不能改变

——如果尝试改变,编译不通过

// constant变量必须在声明的时候初始化,之后不能改变
uint256 constant CONSTANT _NUM = 10;
string constant CONSTANT _STRING = "0xAA);
bytes constant CONSTANT _BYTES = "WTF";
address constant CONSTANT _ADDRESS = 0x0000000000000000000000000000000000000000;

immutable

immutable变量可以在声明时构造函数中初始化

猜你喜欢

转载自blog.csdn.net/weixin_44792616/article/details/127519906