常量(constant state variables)
状态变量
可以被定义为constant常量
,类似于java的static静态变量,常量有如下规定:
- 不是所有的类型都支持常量,当前支持的仅有
值类型
和字符串
。 -
constant常量
必须在编译期间通过一个表达式赋值 - 编译器并不会为
constant常量
在storage
上预留空间
pragma solidity ^0.4.0;
contract C {
uint constant x = 32**22 + 8;
string constant text = "abc";
bytes32 constant myHash = keccak256("abc");
}
常函数(Constant Functions)
函数也可被声明为常量,这类函数将承诺自己不修改区块链上任何状态。
pragma solidity ^0.4.0;
contract C {
function f(uint a, uint b) constant returns (uint) {
return a * (b + 42);
}
}
网友评论