您的位置:首页 > 其它

4. Solidity智能合约enum类型(枚举)

2018-03-09 17:20 316 查看
本小节主要讨论enum类型,

1. enum基本结构

先对enum结构有个基本的认识,这个enum主要描述产品是否用过(New,Used)
    enum ProductCondition{
        New,
        Used
        
    }

2. 在struct中使用enum

enum通常是用在struct当中,描述struct中的某个状态
pragma solidity ^0.4.13;
contract Store{
    
    struct Product{
        
        ProductCondition condition;
        
    }
    
    enum ProductCondition{
        New,
        Used
        
    }
    
}

3. enum结合struct的使用实例

该实例结合struct和enum,生成struct对象,在生成struct对象的过程中使用enum类型

pragma solidity ^0.4.13;
contract Store{
    
    struct Product{
        
        ProductCondition condition;
        
    }
    
    enum ProductCondition{
        New,
        Used
        
    }
    

    function getProductCondition() public pure returns (ProductCondition){
      
        
        Product memory product = Product(ProductCondition.Used);

        return   product.condition;
        
    }
    
    
}

4. 运行效果

从这个实例可以看出,如果构建Product结构体传入ProductCondition.Used则返回1,ProductCondition.New返回0




作者:温春水  致力于研究区块链技术微信:wencs1314  QQ群:612968783 
加群和微信,免费获得高质量区块链学习资料
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息