当前位置: 首页 > news >正文

云服务器 能用来做网站吗小程序开发制作教程

云服务器 能用来做网站吗,小程序开发制作教程,电脑上怎么做网站,建设手机移动网站【从0学习Solidity】41. WETH 博主简介:不写代码没饭吃,一名全栈领域的创作者,专注于研究互联网产品的解决方案和技术。熟悉云原生、微服务架构,分享一些项目实战经验以及前沿技术的见解。关注我们的主页,探索全栈开发…

【从0学习Solidity】41. WETH

在这里插入图片描述

  • 博主简介:不写代码没饭吃,一名全栈领域的创作者,专注于研究互联网产品的解决方案和技术。熟悉云原生、微服务架构,分享一些项目实战经验以及前沿技术的见解。
  • 关注我们的主页,探索全栈开发,期待与您一起在移动开发的世界中,不断进步和创造!
  • 本文收录于 不写代码没饭吃 的学习汇报系列,大家有兴趣的可以看一看。
  • 欢迎访问我们的微信公众号:不写代码没饭吃,获取更多精彩内容、实用技巧、行业资讯等。您关注的是我们前进的动力!

这一讲,我们将学习WETH–带包装的ETH

什么是WETH

41-1.gif

WETH (Wrapped ETH)是ETH的带包装版本。我们常见的WETHWBTCWBNB,都是带包装的原生代币。那么我们为什么要包装它们?

在2015年,ERC20标准出现,该代币标准旨在为以太坊上的代币制定一套标准化的规则,从而简化了新代币的发布,并使区块链上的所有代币相互可比。不幸的是,以太币本身并不符合ERC20标准。WETH的开发是为了提高区块链之间的互操作性 ,并使ETH可用于去中心化应用程序(dApps)。它就像是给原生代币穿了一件智能合约做的衣服:穿上衣服的时候,就变成了WETH,符合ERC20同质化代币标准,可以跨链,可以用于dApp;脱下衣服,它可1:1兑换ETH

WETH合约

目前在用的主网WETH合约写于2015年,非常老,那时候solidity是0.4版本。我们用0.8版本重新写一个WETH

WETH符合ERC20标准,它比普通的ERC20多了两个功能:

  1. 存款:包装,用户将ETH存入WETH合约,并获得等量的WETH

  2. 取款:拆包装,用户销毁WETH,并获得等量的ETH

// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;import "@openzeppelin/contracts/token/ERC20/ERC20.sol";contract WETH is ERC20{// 事件:存款和取款event  Deposit(address indexed dst, uint wad);event  Withdrawal(address indexed src, uint wad);// 构造函数,初始化ERC20的名字和代号constructor() ERC20("WETH", "WETH"){}// 回调函数,当用户往WETH合约转ETH时,会触发deposit()函数fallback() external payable {deposit();}// 回调函数,当用户往WETH合约转ETH时,会触发deposit()函数receive() external payable {deposit();}// 存款函数,当用户存入ETH时,给他铸造等量的WETHfunction deposit() public payable {_mint(msg.sender, msg.value);emit Deposit(msg.sender, msg.value);}// 提款函数,用户销毁WETH,取回等量的ETHfunction withdraw(uint amount) public {require(balanceOf(msg.sender) >= amount);_burn(msg.sender, amount);payable(msg.sender).transfer(amount);emit Withdrawal(msg.sender, amount);}
}

继承

WETH符合ERC20代币标准,因此WETH合约继承了ERC20合约。

事件

WETH合约共有2个事件:

  1. Deposit:存款事件,在存款的时候释放。
  2. Withdraw:取款事件,在取款的时候释放。

函数

除了ERC20标准的函数外,WETH合约有5个函数:

  • 构造函数:初始化WETH的名字和代号。
  • 回调函数:fallback()receive(),当用户往WETH合约转ETH的时候,会自动触发deposit()存款函数,获得等量的WETH
  • deposit():存款函数,当用户存入ETH时,给他铸造等量的WETH
  • withdraw():取款函数,让用户销毁WETH,并归还等量的ETH

Remix演示

1. 部署WETH合约

41-2.jpg

2. 调用deposit,存入1 ETH,并查看WETH余额

41-3.jpg

此时WETH余额为1 WETH

41-4.jpg

3. 直接向WETH合约转入1 ETH,并查看WETH余额

41-5.jpg

此时WETH余额为2 WETH

41-6.jpg

4. 调用withdraw,取出1.5 ETH,并查看WETH余额

41-7.jpg

此时WETH余额为0.5 WETH

41-8.jpg

总结

这一讲,我们介绍了WETH并实现了WETH合约。它就像是给原生ETH穿了一件智能合约做的衣服:穿上衣服的时候,就变成了WETH,符合ERC20同质化代币标准,可以跨链,可以用于dApp;脱下衣服,它可以1:1兑换ETH

在这里插入图片描述

如果这份博客对大家有帮助,希望各位给作者一个免费的点赞👍作为鼓励,并评论收藏一下⭐,谢谢大家!!!
制作不易,如果大家有什么疑问或给作者的意见,欢迎评论区留言。

http://www.hyszgw.com/news/68415.html

相关文章:

  • 物流公司做网站需求wordpress手机主题视频
  • 如何网站防止采集舟山建设网站公司
  • 什么网站最好app研发录
  • 邢台中北世纪城网站兼职电影采集网站建设
  • 网站排名软件包年查域名ip地址查询
  • 网站建设备案优化设可以看女人不易做网站
  • 与女鬼做的网站网站开发公司 重庆
  • 永久建站空间购买整形网站开发
  • 随州网站建设公司做网站主页效果图
  • 公司建设网站的好处用jsp做婚纱网站的流程
  • 大学生帮别人做网站杭州做网站公司
  • 求手机视频网站深圳昊客网络推广
  • 影楼网站建设做婚恋交友类网站
  • 北京网站优化实战dw怎么做班级网站
  • 织梦更新网站地图wordpress 3.7.1 漏洞
  • 苏州市建设安全监督局网站上海网站建设定制开发
  • 怎样写网站文案恩做网站动态页面好
  • 品牌展示型网站源码专业的河南网站建设价格
  • 哪个网站专门做灵异文家居公司网站建设方案ppt
  • 家政保洁公司网站建设方案海报模板在线制作免费无水印
  • 网站项目报价单模板网站制作培训多少钱
  • 郑州网站建设联系方式郑州企业网站排行
  • 有了网站源码怎么建站昌大建设土地建设
  • 刷leetcode对网站开发有用吗手机免费推广软件
  • 蚌埠建设学校网站教育学校一键优化免费下载
  • 孝感网站制作公司优秀网页版式设计
  • 做磨砂卡贴的网站襄阳seo
  • 国产做性直播视频网站广州海珠网站开发设计
  • 兰州高端网站平阳网站优化
  • 网站开发维护报价单长链接转短链接生成器