文章介绍了Solidity中的require语句用法,强调了良好实践包括提供错误信息,并提供了练习建议。
还有一个关键的 Solidity 关键字,然后我们就可以创建自己的 ERC20 代币了。
虽然我们可以使用 if
语句来检查函数的输入是否有效,或者调用函数的是否是 msg.sender
,但更优雅的方式是使用 require
语句。require
语句在某些条件不满足时,会强制回滚交易。
contract ExampleContract {
function mustNotBeFive(
uint256 x
)
public
pure
returns (uint256) {
require(x != 5, "five is not valid");
return x * 2;
}
}
在 Remix 中尝试上述代码。
需要注意的是,省略错误信息是有效的,但被认为是不良实践,因为这会使理解失败原因变得更加困难。
contract ExampleContract {
function mustNotBeFive(
uint256 x
)
public
pure
returns (uint256) {
// 有效,但不推荐实践
require(x != 5);
return x * 2;
}
}
你可以使用这种结构来确保 msg.sender
是预期的人。但你可以在以下问题中练习这一点。
练习问题
查看 区块链训练营 ,以了解更多关于智能合约开发和代币标准的知识。
- 原文链接: rareskills.io/learn-soli...
- 登链社区 AI 助手,为大家转译优秀英文文章,如有翻译不通的地方,还请包涵~
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!