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

현재 언어 번역이 없어 원문을 표시합니다.
本文介绍了solidity中函数重载的基本用法。

原文:《Solidity 极简入门: 16. 函数重载》

我最近在重新学 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 中函数重载的基本用法:名字相同但输入参数类型不同的函数可以同时存在,他们被视为不同的函数。

推特:@0xAA_Science

社区:Discord微信群官网 wtf.academy

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

공유하기:

작성자: 0xAA

이 글은 PANews 입주 칼럼니스트의 관점으로, PANews의 입장을 대표하지 않으며 법적 책임을 지지 않습니다.

글 및 관점은 투자 조언을 구성하지 않습니다

이미지 출처: 0xAA. 권리 침해가 있을 경우 저자에게 삭제를 요청해 주세요.

PANews 공식 계정을 팔로우하고 함께 상승장과 하락장을 헤쳐나가세요
PANews APP
드래곤플라이 주소가 1억 3700만 개의 SKY 토큰을 코인베이스로 이체한 것으로 추정되는데, 이는 토큰이 인출되었을 당시 가치의 절반 이상 하락한 수치입니다.
PANews 속보