【Require】
require() 用於檢驗簡單的條件:
合理的輸入
執行前必要的簡單條件
回傳一則訊息
pragma solidity ^0.8.11;
contract error {
function testRequire(uint _i) public pure {
require(_i > 10, "Input must be greater than 10");
}
}Require 會被觸發的情況及性質如下:
require(X)其中 X 為false經由message呼叫函數,但此函數並沒有被適當地完成
不包含Low-Level的函式呼叫
使用外部函數呼叫了一個沒有任何程式碼的合約
合約裡面的物件沒有被宣告payable modifier卻接收到了Ether
唯讀的函式(getter function)接收到了Ether
Address.transfer()執行失敗
Last updated
Was this helpful?