solidity struct 结构体创建与使用浅学 (四)

环境说明: Ide:在线remix Solidity IDE
语言:solidity solidity
版本号:0.4.20
Tip:如果一点都不懂的建议从头开始看
运行结果截图我不赘述,所有合约代码均通过个人检测。请按照标准进行操作,如出问题检测是否网络连得上外网,且操作按照第一节内容类似操作;由于版本更新,可能会出现不同,但该教材代码均适用于在0.4.20 版本使用

solidity结构体使用和一些语言使用类似。
合约代码:

pragma solidity ^0.4.20;
contract Test{
    People p;
    struct People{
        uint256 age;
    }
    //定义函数修改器
    modifier age18(uint256 age){
        require(age >= 18);
        _;
    }
    //set方法,用函数修改器age18修饰set函数
    function set(uint256 x)public age18(x){
        p=People(x);
    }
    //返回结构体变量中的age内容
    function get() public constant returns(uint256){
        return p.age;
    }
}

代码解析,在此只主要说明结构体其他上一节内容:
People p;:

声明People 结构体变量p,这点和类似于C语言结构体之类没什么区别。

struct People{
uint256 age;
}

定义People结构体,其中结构体变量为age是uint类型,和一些语言结构体定义区别不大

p=People(x);:

初始化结构体People,并且赋值给p结构体变量

return p.age;:

返回结构体变量p中age的值。

发布了110 篇原创文章 · 获赞 147 · 访问量 17万+

猜你喜欢

转载自blog.csdn.net/A757291228/article/details/85162699