solidity msg.sender.transfer发送给谁
发送给调用者自己,表示将该合约中的自己应有的以太坊退款到发送者自己的账户
address.transfer(amount)
转账一定数量(以wei为单位)的以太币到指定的地址,遇到任何错误都将抛出异常。我们在Faucet例子中使用过这个方法,针对的是msg.sender这个地址,即msg.sender.transfer
精通以太坊8:智能合约与Solidity(2) | 码农家园精通以太坊8:智能合约与Solidity(2)8.1使用Solidity进行编程有关Solidity的完整文档可以在这里访问:https://solidity.readthedocs.io/en/latest。8.2数据...https://www.codenong.com/cs105234539/
如:weth源码
pragma solidity ^0.4.18;contract WETH9 {string public name = "Wrapped Ether";string public symbol = "WETH";uint8 public decimals = 18;event Approval(address indexed src, address indexed guy, uint wad);event Transfer(address indexed src, address indexed dst, uint wad);event Deposit(address indexed dst, uint wad);event Withdrawal(address indexed src, uint wad);mapping (address => uint) public balanceOf;mapping (address => mapping (address => uint)) public allowance;function() public payable {deposit();}function deposit() public payable {balanceOf[msg.sender] += msg.value;Deposit(msg.sender, msg.value);}function withdraw(uint wad) public {require(balanceOf[msg.sender] >= wad);balanceOf[msg.sender] -= wad;msg.sender.transfer(wad);Withdrawal(msg.sender, wad);}function totalSupply() public view returns (uint) {return this.balance;}function approve(address guy, uint wad) public returns (bool) {allowance[msg.sender][guy] = wad;Approval(msg.sender, guy, wad);return true;}function transfer(address dst, uint wad) public returns (bool) {return transferFrom(msg.sender, dst, wad);}function transferFrom(address src, address dst, uint wad)publicreturns (bool){require(balanceOf[src] >= wad);if (src != msg.sender && allowance[src][msg.sender] != uint(-1)) {require(allowance[src][msg.sender] >= wad);allowance[src][msg.sender] -= wad;}balanceOf[src] -= wad;balanceOf[dst] += wad;Transfer(src, dst, wad);return true;}
}
solidity msg.sender.transfer发送给谁相关推荐
- tx.origin 与 msg.sender
我最近一直在玩ethernaut web3/solidity 游戏,在第 4 级上,我浪费了几分钟来了解 tx.origin 和 msg.sender 之间的区别,它们在solidity 中构建全局变 ...
- 区块链 以太坊 多层调用,获取调用者 msg.sender
msg.sender:合约的直接调用者. 由于是直接调用者,所以当处于 用户A->合约1->合约2 调用链下, 若在合约2内使用msg.sender,得到的会是合约1的地址. 如果想获取用 ...
- Nodejs发送邮箱,nodejs怎样发送给163邮箱,nodemailer模块,发送邮箱错误代码535
前提需先安装 nodemailer 模块,执行下面的命令 npm install nodemailer -s 首先我有一个配置文件 conf.js module.exports = {url:'mon ...
- 威纶通触摸屏与温控器进行MODBUS通信并通过宏指令将数据发送给PLC的具体方法
威纶通触摸屏与温控器进行MODBUS通信并通过宏指令将数据发送给PLC的具体方法 温控器参数设置: RTU协议.从站站号地址.波特率9600.数据长度8位.EVEN校验.停止位1以及热电偶类型为K型 ...
- apple关闭双重验证_Apple安全浏览说明-Apple为什么将您的数据发送给Google和腾讯,以及如何将其关闭
apple关闭双重验证 If you use Safari on certain versions of iOS, then your IP address is being sent to Goog ...
- 使用谷歌浏览器插件“Postman Interceptor”自动将http请求发送给Postman
日常开发中,经常会需要查看http请求及响应是否按预期设计目标完成交互.更有甚者,我们会通过模拟拦截原始http请求,并通过更改请求参数.请求header.或注入自定义参数来达到指定的实验效果. 这时 ...
- nginx配置日志发送给syslog服务器
需求描述 网站服务器用的nginx默认是把日志保存在本地的/var/log/nginx/access.log和/var/log/nginx/error.log, 想要同时输出给syslog日志服务器 ...
- vivo手机如何将个人简历转换成PDF文件发送给HR?
把个人简历转换成PDF文件,不论你的PDF文档"走"到天涯海角,在任何硬件,任何操作系统上都能正确地显示原来的字形和字貌,所以现在越来越多的HR喜欢用PDF文件看求职者的简历.那么 ...
- 搞个好玩的东西,爬虫爬取网络流行语录,并通过python自动发送给qq好友,实现有技术的刷屏哈哈。
首先我们需要爬虫的模块函数and python的win32库. 这里我们以郭老师语录为例 import win32gui import win32con import win32clipboard a ...
最新文章
- reporting Server組件不全引起的致命錯誤
- Unity UGUI 小知识
- 程序猿修仙之路--算法之直接插入排序
- S3C2410时钟部分总结
- ubuntu下python的错误
- 华为手机可以安装python吗_何安装python2.6
- 【ENVI二次开发】关于批处理(Batch)模式与ENVI_DOIT的使用
- python输入一个假分数_腾讯内容开放平台
- 为什么要文件名和类名一样php_php文件名和类名相同时include不起作用?
- Java微信运动步数排序设计_微信小程序仿微信运动步数排行-交互
- tbSchedule 使用
- 目录操作 递归打印目录 DIR drent
- LSD_SLAM编译之一气呵成法
- Tomcat启动成功,但是访问项目时或者是localhost:8080时出现404
- 利用二次导数对函数凹凸性的证明
- 安装Windows 10X 教你如何安装Win10X正式版 及下载地址Win10X 20279.1002
- 记录四川移动盒子打开adb命令的方法 型号:UNT401H
- 矩阵连乘——动态规划算法
- 山石网科Hillstone防火墙L2TP over ***详细配置步骤(官方最新版)
- CentOS双网卡双IP设置