iT邦幫忙

2024 iThome 鐵人賽

DAY 24
0
佛心分享-IT 人自學之術

Token相關的應用場景和技術領域系列 第 24

Day24 增發代幣、銷毀代幣

  • 分享至 

  • xImage
  •  

測試重點:
(1)授權與轉移功能測試:測試approve和transferFrom函數,確認在授權某地址後,這個地址可以從帳戶轉移代幣。
(2)允許額查詢:測試allowance函數,確保當前被授權的額度正確顯示。

更多實用功能:
加入一些額外的功能來增強代幣的實用性或安全性,例如:
(a) Minting (增發代幣):
允許合約所有者創建更多的代幣,將其添加到總供應量和指定地址的餘額中。

function mint(uint256 amount) public {
    require(msg.sender == owner, "Only the owner can mint tokens");
    totalSupply += amount;
    balanceOf[owner] += amount;
}

允許合約創建新的代幣,這在一些應用場景中會很有用,比如需要增加流動性或作為激勵。

(b) Burning (銷毀代幣):
用戶可以銷毀一定數量的代幣,從總供應量中移除,讓代幣變得更具稀缺性。

function burn(uint256 amount) public {
    require(balanceOf[msg.sender] >= amount, "Insufficient balance");
    totalSupply -= amount;
    balanceOf[msg.sender] -= amount;
}

這樣可以允許用戶主動銷毀他們的代幣,減少總供應量,這可能是增加代幣價值的策略之一。


上一篇
Day23 使用Remix IDE來撰寫智能合約
下一篇
Day25 暫停功能、更換功能
系列文
Token相關的應用場景和技術領域30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言