入参和出参(Input Parameters and Output Parameters)
优质
小牛编辑
143浏览
2023-12-01
同javascript
一样,函数有输入参数,但与之不同的是,函数可能有任意数量的返回参数。
入参(Input Parameters)
入参(Input Parameter)
与变量的定义方式一致,稍微不同的是,不会用到的参数可以省略变量名称。一种可接受两个整型参数的函数如下:
pragma solidity ^0.4.0;
contract Simple {
function taker(uint _a, uint) {
// do something with _a.
}
}
出参(Output Parameters)
出参(Output Paramets)
在returns
关键字后定义,语法类似变量的定义方式。下面的例子展示的是,返回两个输入参数的求和,乘积的实现:
pragma solidity ^0.4.0;
contract Simple {
//return sum and product
function arithmetics(uint _a, uint _b) returns (uint o_sum, uint o_product) {
o_sum = _a + _b;
o_product = _a * _b;
}
}
出参的的名字可以省略。返回的值,同样可以通过return
关键字来指定。return
也可以同时返回多个值,参见Returning Multiple Values。出参的默认值为0,如果没有明确被修改,它将一直是0。
入参和出参也可在函数体内用做表达式。它们也可被赋值。
返回多个值(Returning Multiple Values)
当返回多个参数时,使用return (v0, v1, ..., vn)
。返回结果的数量需要与定义的一致。