01
constant(常量)
// SPDX-License-Identifier: GPL-3.0pragma solidity ^ 0.8 .0;contract ImmutableExample {address public immutable MY_ADDRESS;uint public immutable MY_UINT;constructor( uint _myUint) {MY_ADDRESS = msg.sender;MY_UINT = _myUint;}}

02
immutable(不可变量)
// SPDX-License-Identifier: GPL-3.0pragma solidity ^ 0.8 .0;contract ConstantImmutableExample {string constant TEXT = "abc";bytes32 constant MY_HASH = keccak256( "abc");uint immutable decimals;uint immutable maxBalance;address immutable owner = msg.sender;constructor( uint decimals_, address ref) {decimals = decimals_;maxBalance = ref.balance;}function isBalanceTooHigh( address _other) public view returns ( bool) {return _other.balance > maxBalance;}}

// SPDX-License-Identifier: GPL-3.0pragma solidity ^ 0.8 .0;contract ConstantImmutableExample {string constant TEXT = "abc";bytes32 constant MY_HASH = keccak256( "abc");uint immutable decimals;uint immutable maxBalance;address immutable owner = msg.sender;constructor( uint decimals_, address ref) {decimals = decimals_;maxBalance = ref.balance;}function isBalanceTooHigh( address _other) public view returns ( bool) {return _other.balance > maxBalance;}}
版权声明:本文为CSDN博主「甄齐才」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。https://blog.csdn.net/coco2d_x2014/article/details/128424801
文章原标题:《玩以太坊链上项目的必备技能(Constant 和 Immutable 状态变量-Solidity之旅十六)》
旨在传播区块链相关技术,如有侵权请与我们联系删除。
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/70012206/viewspace-3002202/ ,如需转载,请注明出处,否则将追究法律责任。