WTF Solidity极简入门第十六讲:函数重载

原文:

我最近在重新学 solidity,巩固一下细节,也写一个「Solidity 极简入门」,供小白们使用(编程大佬可以另找教程),每周更新 1-3 讲。

所有代码和教程开源在 github: github.com/AmazingAng/WTFSolidity

重载

solidity 中允许函数进行重载(overloading),即名字相同但输入参数类型不同的函数可以同时存在,他们被视为不同的函数。注意,solidity 不允许修饰器(modifier)重载。

函数重载

举个例子,我们可以定义两个都叫 saySomething() 的函数,一个没有任何参数,输出"Nothing";另一个接收一个 string 参数,输出这个 string。

WTF Solidity极简入门第十六讲:函数重载

实参匹配(Argument Matching)

在调用重载函数时,会把输入的实际参数和函数参数的变量类型做匹配。

如果出现多个匹配的重载函数,solidity 文档上说会报错。它给的例子是两个叫 f() 的函数,一个参数为 uint8,另一个为 uint256。文档说如果输入 50,既可以被转换为 uint8,也可以被转换为 uint256,因此会报错。但是我没遇到:

WTF Solidity极简入门第十六讲:函数重载

总结

这一讲,我们介绍了 solidity 中函数重载的基本用法:名字相同但输入参数类型不同的函数可以同时存在,他们被视为不同的函数。

推特:

社区:||

所有代码和教程开源在github: 

承接区块链项目定制开发

微信:btc9767

QQ :1330797917

TELEGRAM: BTCOK9

承接区块链项目定制开发


qklbishe.com区块链毕设代做网专注|以太坊fabric-计算机|java|毕业设计|代做平台-javagopython毕设 » WTF Solidity极简入门第十六讲:函数重载