目录
Solidity 智能合约如何给账户充值
- // SPDX-License-Identifier: GPL-3.0
- // Author: 菜鸟实战
- // Description: 智能合约如何给账户充值
- // 编译器版本
- pragma solidity >=0.7.0 <0.9.0;
-
- // 知识点
- // # 智能合约
- // # 智能合约函数
- // # 智能合约充值
- // # payable 关键字
- // # 智能合约部署地址
- // # 智能合约的运行
- // # 合约 this 对象
-
- // ## 合约地址
- // 合约部署后会形成一个地址,这个地址和账户地址的格式是一样的,它可以像普通账户那样接受转账交易
- // ## payable 关键字
- // 凡是涉及 eth 转移的函数或者地址,都要加上关键字 payable ,代表可支付
- // ## 合约 this 对象
- // 每个合约内部有一个 this 对象,在合约中可以将其转化为 address 类型,从而可以获得账户余额
-
- // 合约名称
- contract DepositAction {
-
- address public sender; // 发送者
-
- // 构造函数
- constructor() public {
- sender = msg.sender;
- }
-
-
- // 充值,注意要加 payable
- function deposit() public payable {
- //nothing to do
- }
-
- // 获取余额
- function getBalance() public view returns (uint256) {
- // 强制转换为地址类型
- return address(this).balance;
- }
- }
1、充值金额
2、充值并查看结果