solidity selfdestruct合约销毁

solidity selfdestruct合约销毁

1、部署合约,附带value

2、获取合约地址的eth余额,余额为第一步附带的value

3、调用方法killSelf,进行合约的销毁,并把剩余的ETH转给receiver

solidity 复制代码
// SPDX-License-Identifier: MIT
pragma solidity >=0.8.0 <0.8.18;

contract Destroy {
    address public owner;

    constructor() payable {
        owner = msg.sender;
    }

    event Receive(address indexed sender, uint256 amount, string data);

    receive() external payable {
        emit Receive(msg.sender, msg.value, "Receive Success");
    }

    function killSelf(address receiver) public {
        require(msg.sender == owner, "Only owner can call this function");

        // // 调用selfdestruct销毁合约,并把剩余的ETH转给receiver
        selfdestruct(payable(receiver));
    }

    // 获取合约地址的eth余额
    function getBalance() public view returns (uint256) {
        return address(this).balance;
    }
}
相关推荐
终端域名1 小时前
区块链:数字时代信任基石的构建与创新
区块链
数据皮皮侠3 小时前
最新上市公司业绩说明会文本数据(2017.02-2025.08)
大数据·数据库·人工智能·笔记·物联网·小程序·区块链
余_弦4 小时前
区块链中的密码学 —— 密钥派生算法
算法·区块链
天涯学馆17 小时前
Solidity中的访问控制:保护你的智能合约
智能合约·solidity·以太坊
小明的小名叫小明1 天前
区块链技术原理(14)-以太坊数据结构
数据结构·区块链
终端域名2 天前
中本聪思想与Web3的困境:从理论到现实的跨越
web3·区块链·元宇宙
大白猴3 天前
大白话解析 Solidity 中的防重放参数
区块链·智能合约·solidity·时间戳·重放攻击·nonce·防重放参数
小明的小名叫小明3 天前
区块链技术原理(12)-以太坊区块
区块链
大白猴3 天前
大白话解析“入口点合约”
区块链·智能合约·solidity·以太坊·账户抽象·入口点合约·erc4337
余_弦3 天前
区块链中的密码学 —— 零知识证明
算法·区块链·以太坊