更新时间:2019-08-27 02:02
蚂蚁区块链合约平台支持的 Solidity 语法基本与官方文档一致,具体语法介绍可参看 Solidity 官方文档(英文)。
本文主要介绍 Solidity 合约函数构造的常用 权限关键字 和 修饰关键字。
function (<parameter types>) {public | private | internal | external} [modifier] [pure|constant|view|payable] [returns (<return types>)]
modifier onlyAdmin() {
require(msg.sender == admin, "Permission denied");
_;
}
function set(uint a) public onlyAdmin returns(uint) {
.....
}
constant:被声明为 constant 的状态变量只能使用那些在编译时有确定值的表达式来给它们赋值。任何通过访问 内存、区块链数据(例如 now,this.balance 或 block.number)或执行数据(msg.gas)或对外部合约的调用来给它们赋值都是不允许的。不是所有类型的状态变量都支持用 constant 来修饰,当前支持的仅有值类型和字符串。
pure:被该关键字修饰的状态变量只能读取其值,不能对该状态变量的值进行修改。
view:被该关键字修饰的状态变量既不能读取变量,也不能修改该变量。
Storage 变量是指永久存储在区块链中的变量。
Memory 变量则是临时的,当外部函数对某合约调用完成时,内存型变量即被移除。
在文档使用中是否遇到以下问题
更多建议
匿名提交