Solidity極簡入門|第三十一講:ERC20
BlockBeats 律動財經 2022-10-18 22:00
我在重新學 solidity,可以在最近的一個簡單的白講基礎上,也寫下今天的最新教程,供小大家使用(編程大另一個-另一個),每周更新 13。
所有代碼和教程開源在 github:github.com/AmazingAng/WTFSolidity
這樣,我們將介紹以太坊上的 ERC20 Token標準,並發行自己的測試 Token 。
ERC20
ERC20 是以太坊上的 Token 標準,來自 2015 年 11 月 V 神參與的 EIP20。它實現了 Token 流通的基本邏輯:
帳戶餘額
轉移
授權許可
Token 總流入
Token 任選資訊():名稱,代號,小數暴露
IERC20
IERC20 是 ERC20 Token 標準的接口契約,規定了 ERC20 Token 需要實現的功能和事件。
事件
IERC20 定義了一個和 2 事件,分別在事件授權和授權時被釋放 TransferApproval
函數
IERC20 定義了 6 一個功能,提供了一個轉移 Token ,並獲得批准,以便其他鏈上的基本使用。
totalSupply() 返回
Token
總流入
balanceOf() 返回帳戶餘額
transfer() 轉移
allowance() 返回授權額度
approve() 授權
transferFrom() 授權許可
實現 ERC20
現在寫一個 ERC20,規定將我們 IERC20 簡單實現的功能。
狀態變量
我們需要通過狀態變量來記錄帳戶餘額,其中授權和金額為 Token 類型,自動生成 balanceOf 一個同名函數,實現規定的,和。。allowancetotalSupplypublicgetterIERC20balanceOf()allowance()totalSupply()namesymboldecimals
函數
構造函數:初始化
Token
名稱、代號。
transfer() 函數 IERC20 中的 transfer 函數,
Token
實現。調用方 amount 幣會增加
Token
數量,接收方此函數相應的狗改土,加入、分紅、抽獎等。
approve() 函數:IERC20 的 approve 函數,
Token
授權邏輯。被授權方 spender 可以控制授權方的 amount 數量的
Token
。
transferFrom() 功能:IERC20 中的 transferFrom 函數,授權邏輯。被授權方將授權方實現 sender 的 amount 數量的
Token
授權給接收方 recipient。
mint() 函數:鑄造
Token
函數,不在 IERC20 標準中。這裡為了方便,任何人都可以添加任意數量的
Token
,實際應用中會權限管理,只能 owner 鑄造
Token
:
burn() 函數:
Token
函數,不在 IERC20 標準中。
發行 ERC20 Token
標準 ERC20,在 ETH 鏈上發行現在是我們最簡單的 Token ,我們發行屬於我們的第一個 Token 。
在 Remix 上編譯 ERC20 好的合約中,在部署欄輸入構造函數的參數,name_並且 symbol_都設置好 WTF,然後點擊 transact 鍵進行部署。
WTF 我們需要運行 mint() 函數來給自己鑄造一些 Token 。點開 Deployed Contract 中的契約 ERC20,在 mint 函數那一欄輸入並 100 點擊 mint,為自己創造一個這樣的代 100 幣 WTF。
利用我們 balanceOf() 函數來查詢帳戶餘額。輸入當前的帳戶,可以查看我們的餘額 100,成功。
總結
在這一天講,我們學習了以太坊上的 ERC20 標準實現,發行了我們的測試 Token 。2015 年底提出的 ERC20 Token 標準極大地降低了以太坊上發行 Token 的門檻,並開啟了 ICO 在投資時,可以仔細閱讀項目的 Token 契約,有效避免貔貅,增加投資成功率。
暢行幣圈交易全攻略,專家駐群實戰交流
▌立即加入鉅亨買幣實戰交流 LINE 社群(點此入群)
不管是新手發問,還是老手交流,只要你想參與虛擬貨幣現貨交易、合約跟單、合約網格、量化交易、理財產品的投資,都歡迎入群討論學習!
- 從零開始學合約系列講座熱烈報名中
- 掌握全球財經資訊點我下載APP
文章標籤
上一篇
下一篇