要求条件
本课属于 Coddy Solidity 学习旅程的“基础知识”单元。第 46 课,共 53 课。
使用 require(condition, message) 在预期条件为 false 时拒绝调用。条件满足时,程序会继续执行。条件不满足时,require 会回滚调用及其状态更改。在执行依赖该条件的操作之前,先验证输入。
此代码片段中的语句在提供的 main 函数内运行。
uint256 quantity = 7;
require(quantity > 0, "Positive quantity required");
console.log(quantity * 3);值 7 通过了正数检查,因此计算结果会打印 21。如果 quantity 为 0,调用则会回退。这条消息说明了未满足的要求;成功调用时不会打印它。
require 在条件为 true 时继续执行,在条件为 false 时回退。
挑战
简单使用有用的错误消息,要求除数大于零。然后输出总数除以除数的结果。可见输出测试使用正除数,但你的代码仍必须包含保护条件。
测试按以下顺序向 main 传递参数:uint256 total、uint256 divisor。每项测试都会从全新的合约状态开始。
使用 console.log 输出所需内容。只输出所需的值,每行一个,除非任务另有说明,否则不要添加额外标签。
亲手试试
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.26;
import "forge-std/console.sol";
contract Main {
function main(uint256 total, uint256 divisor) external view {
// 在这里写下你的答案。
}
}这节课包含一个小测验。开始学习即可作答,并记录你的进度。
基础知识中的所有课
自己练习: Solidity 在线编辑器