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

再学:call与delegatecall、call转账 Bank合约

目录

1.call与delegatecall

2.transfer && call

3.若想内部传递abi编码

4.Bank合约 


1.call与delegatecall

call:切换上下文

delegatecall:不切换上下文

delegatecall可以理解为 A在调用B这个集成在A的方法

可升级合约,常用delegatecall

2.transfer && call

地址若是外部账号的地址,调transfer方法就没有什么问题

但如果是合约的话,就会消耗gas,因此,采用addr.call 可以避免gas的限制

3.若想内部传递abi编码

无参写法如下

有参如下:

call 来执行 transfer 操作,这是 transfer 函数背后的底层逻辑。 

4.Bank合约 

红色框:constructor 函数通常用于那些只需要设置一次、在合约生命周期开始时就必须确定的配置。由于 constructor 只会在合约创建时执行一次,因此它非常适合执行这些一次性的初始化任务。 

 黄色框:设定权限,只能被谁使用

绿色框:受到转账,对账户的余额进行加 

白色框:查看账户上的余额有多少 

白色框:取款

绿色框:取出全部款

http://www.dtcms.com/a/76751.html

相关文章:

  • 07-SDRAM控制器的设计——Sdram_Control.v代码解析
  • Git使用SSH登陆
  • synchronized的原理和锁升级
  • Ubuntu “文件系统根目录”上的磁盘空间不足
  • 数据结构篇——线索二叉树
  • 【R语言】lm线性回归及输出含义,置信区间,预测,R方,ggplot 拟合直线
  • Unity学习之Shader总结(一)
  • Ubuntu20.04安装Nvidia显卡驱动
  • Cursor与Blender-MCP生成3D模型
  • Spring Boot集成MyBatis与MySQL
  • linux du和df
  • Linux 快捷键 | 终端快捷键 / 键盘快捷键
  • 大模型如何赋能安全防御?威胁检测与漏洞挖掘的“AI革命”
  • Linux 命令行整理(完善中)
  • fastapi+angular实现菜鸟驿站系统
  • 安全地自动重新启动 Windows 资源管理器Bat脚本
  • HTML 样式与布局初体验:学习进程中的关键节点(一)
  • 在 VSCode 远程开发环境下使用 Git 常用命令
  • Spring Boot - Spring Boot 静态资源映射(默认静态资源映射、自定义静态资源映射)
  • pytorch小记(十三):pytorch中`nn.ModuleList` 详解
  • 什么是站群服务器?站群服务器应该怎么选?
  • (暴力枚举 水题 长度为3的不同回文子序列)leetcode 1930
  • 可视化图解算法:链表中倒数(最后)k个结点
  • mysql-INSERT语句形态(DELAYED、LOW_PRIORITY、HIGH_PRIORITY 和 IGNORE)
  • 2025年图生视频模型技术全景解析
  • Linux配置yum仓库,服务控制,防火墙
  • 利用大语言模型生成的合成数据训练YOLOv12:提升商业果园苹果检测的精度与效率
  • 如何用Function Calling解锁OpenAI的「真实世界」交互能力?(附Node.js 实战)
  • C语言文件操作入门
  • Odoo 18 中的列表(list) 、表单(Form)、数据透视表、图表视图、看板视图、活动视图、日历视图等综合应用实例