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

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 {

相关文章:

  • 代码随想录【字符串】
  • 云化XR什么意思,Cloud XR是否有前景?
  • 详细分析Mysql中的JSON_OBJECT() 基本知识(附Demo)
  • 阅文集团CEO侯晓楠:建立10亿生态扶持基金,为好内容搭建舞台
  • LVS+KeepAlived高可用负载均衡集群
  • 网络编程(一)基本概念、TCP协议
  • vivado HW_SIO_RX
  • torch.squeeze() dim=1 dim=-1 dim=2
  • UML相关1
  • Docker 国内镜像源更换
  • [SWPUCTF 2022 新生赛]ez_1zpop(php反序列化之pop链构造)
  • MySQL之高级特性(三)
  • 道路堵塞监测识别摄像机
  • 推荐这两款AI工具,真的很好用
  • 屏幕空间环境光遮蔽(SSAO)在AI绘画中的作用
  • [ JavaScript ] 数据结构与算法 —— 链表
  • Docker: 容器互访的三种方式
  • Java|序列化异常StreamCorruptedException的解决方法
  • MySQL-事务管理(基础)
  • PHP的类修饰符与访问修饰符
  • SQLServer之创建显式事务
  • Tornado学习笔记(1)
  • Vue学习第二天
  • -- 查询加强-- 使用如何where子句进行筛选,% _ like的使用
  • 对话:中国为什么有前途/ 写给中国的经济学
  • 警报:线上事故之CountDownLatch的威力
  • 聚类分析——Kmeans
  • 看域名解析域名安全对SEO的影响
  • 聊聊hikari连接池的leakDetectionThreshold
  • 人脸识别最新开发经验demo
  • 携程小程序初体验
  • 一天一个设计模式之JS实现——适配器模式
  • 阿里云ACE认证之理解CDN技术
  • ​香农与信息论三大定律
  • #LLM入门|Prompt#3.3_存储_Memory
  • (1)bark-ml
  • (10)STL算法之搜索(二) 二分查找
  • (env: Windows,mp,1.06.2308310; lib: 3.2.4) uniapp微信小程序
  • (MonoGame从入门到放弃-1) MonoGame环境搭建
  • (pojstep1.3.1)1017(构造法模拟)
  • (备份) esp32 GPIO
  • (附源码)ssm失物招领系统 毕业设计 182317
  • (数据大屏)(Hadoop)基于SSM框架的学院校友管理系统的设计与实现+文档
  • (微服务实战)预付卡平台支付交易系统卡充值业务流程设计
  • (五十)第 7 章 图(有向图的十字链表存储)
  • (原創) X61用戶,小心你的上蓋!! (NB) (ThinkPad) (X61)
  • (转)Linux NTP配置详解 (Network Time Protocol)
  • (转)详解PHP处理密码的几种方式
  • *上位机的定义
  • .net 7和core版 SignalR
  • .net wcf memory gates checking failed
  • .NET 将多个程序集合并成单一程序集的 4+3 种方法
  • .NET/C#⾯试题汇总系列:集合、异常、泛型、LINQ、委托、EF!(完整版)
  • /dev/VolGroup00/LogVol00:unexpected inconsistency;run fsck manually
  • /etc/shadow字段详解