代码示例
pragma solidity ^0.4.4;
contract Mj {
enum ActionChoices {GoLeft,GoRight,GoStraight,SitStill}
ActionChoices _choice;
ActionChoices constant defaultChoice = ActionChoices.GoStraight; //constant定义常量,不能修改。
function setGoStraight(ActionChoices choice) {
_choice = choice;
}
function getChoice() constant returns (ActionChoices) {
return _choice;
}
function getDefault() pure public returns (uint) {
return uint(defaultChoice);
}
}
enum是关键词,ActionChoices是自己定义的类型,该类型包含4个参数,当个数在255以为,该类型的数据类型时uint8,超过时为uint16。