iT邦幫忙

2023 iThome 鐵人賽

DAY 15
0
影片教學

30天讓你從【零基礎】掌握智能合約 Solidity 入門走到飛系列 第 15

Solidity 入門走到飛🚀-【Day15】異常 - error、require、assert

  • 分享至 

  • xImage
  •  

影片教學

Yes

主要內容

異常用於處理合約中的錯誤情況,可以幫助開發人員更好地調試和管理錯誤,有三種異常處理機制。

1.Error

Error 是 Solidity 0.8.4 版本中引入的新特性,用於向用戶解釋操作失敗的原因。它可以攜帶參數,幫助開發人員更好地調試,可以在合約之外定義錯誤。

例如,定義一個名為 TransferNotOwner 的錯誤,當用戶不是代幣的所有者嘗試轉帳時,就會拋出該錯誤。錯誤需要與 revert 命令一起使用,這種方法對於高效地省 gas 很有幫助。

2.Require

require 命令是 Solidity 0.8 版本之前使用的異常處理機制。它仍然廣泛使用,但隨著描述異常的字符串長度增加,它的 gas 成本會上升。

require 命令用於檢查條件,如果條件不成立,就會拋出異常並提供一個錯誤描述,這是一種常見的異常處理方法。

3.Assert

assert 命令主要用於程序員調試目的,因為它不提供異常原因的描述。

相關連結

WTF Solidity Errors


上一篇
Solidity 入門走到飛🚀-【Day14】抽象合約 & 接口
下一篇
Solidity 入門走到飛🚀-【Day16】函數重載 - overloading
系列文
30天讓你從【零基礎】掌握智能合約 Solidity 入門走到飛30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言