payable介绍, 编写一个转账的测试合约

目录

1. payable介绍

2. 编写一个转账的测试合约

3. 详解如何使用该合约

3.1. 转账前:

3.2. 点击deposit1转账:

3.3. 点击getBalance查看当前合约的额度:

3.4. 点击withdraw把当前合约的所有余额全部转到调用者:

3.5. 再次查看合约拥有的以太币:


1. payable介绍

在Solidity中,payable是一个修饰符(modifier),用于声明函数或合约可以接收以太币(Ether)的支付。

当一个函数被标记payable时,它就可以接收以太币作为函数调用的一部分,并且可以在函数体内执行相关的逻辑来处理这笔支付。

以下是一些关键点关于payable的使用:

  1. 接收以太币: 使用payable修饰符声明的函数可以接收以太币作为支付。这意味着调用该函数时,发送的以太币将被转移到函数所在合约的余额中。

  2. 处理支付逻辑: 通过在payable函数的函数体内编写逻辑,你可以处理收到的以太币。这可以包括更新合约内部的状态、触发其他函数调用、与其他地址进行交互等。

  3. payable函数: 如果一个函数没有标记为payable,那么在调用该函数时,不能够向该函数发送以太币。如果尝试向非payable函数发送以太币,会触发一个异常并导致交易失败。

以下是一个使用payable修饰符的简单示例:

solidity:

contract MyContract {
   

最近更新

  1. TCP协议是安全的吗?

    2024-06-13 05:52:02       10 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-06-13 05:52:02       12 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-06-13 05:52:02       11 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-06-13 05:52:02       13 阅读

热门阅读

  1. git 常用命令

    2024-06-13 05:52:02       4 阅读
  2. 理解 Vue 中的响应式系统

    2024-06-13 05:52:02       4 阅读
  3. Springer投稿流程——Cybersecurity

    2024-06-13 05:52:02       7 阅读
  4. debian10 arm芯片安装.net6

    2024-06-13 05:52:02       5 阅读
  5. R语言桑基图

    2024-06-13 05:52:02       6 阅读
  6. 开发TEE的踩坑之配置SGX环境

    2024-06-13 05:52:02       4 阅读
  7. vxe-input 本地正常线上环境不显示问题

    2024-06-13 05:52:02       7 阅读