solidity语言8
2024-10-19 08:54:18
输入参数
pragma solidity ^0.4.16;
contract Simple {
function taker(uint _a, uint _b) public pure {
// do something with _a and _b.
}
}
输出参数
pragma solidity ^0.4.16;
contract Simple {
function arithmetics(uint _a, uint _b) public pure returns (uint o_sum, uint o_product) {
o_sum = _a + _b;
o_product = _a * _b;
}
}
关键字returns,返回参数如果没有,则返回0
返回多个值
return (v0, v1, ..., vn),函数的输出参数必须匹配同样数量参数
内部函数调用
pragma solidity ^0.4.16;
contract C {
function g(uint a) public pure returns (uint ret) { return f(); }
function f() internal pure returns (uint ret) { return g(7) + f(); }
}
外部函数调用
表达式 this.g(8), c.g(2)
当调用其他合约的函数,调用的转帐wei,gas使用.value() 和 .gas()
pragma solidity ^0.4.0;
contract InfoFeed {
function info() public payable returns (uint ret) { return 42; }
}
contract Consumer {
InfoFeed feed;
function setFeed(address addr) public { feed = InfoFeed(addr); }
function callFeed() public { feed.info.value(10).gas(800)(); }
}
最新文章
- JAVA面向对象
- WCF的Restful和TCP方式调用性能比较
- mysql数据库乱码解决方法之一
- imx6 关闭调试串口
- 三维网格细分算法(Catmull-Clark subdivision &; Loop subdivision)附源码
- __future__
- DWR入门教程
- 硬盘结构介绍--mbr及分区
- POJ 1797 Heavy Transportation (dijkstra 最小边最大)
- Lua 基本语法
- ASP.NET - Eval使用自定义的方法
- HTML5学习知识点
- Entity Framework分页扩展
- Django 系列博客(九)
- global的使用
- HDU6011
- java.exe
- 【Linux 进程】exec族函数详解
- chromium浏览器开发系列第三篇:chromium源码目录结构
- mybatis中单个参数的引用