51小猪存钱罐

简易存钱罐:

通过任何人的地址向合约发送以太坊主币。

存钱罐的拥有者可以取出别人或者自己存储的主币,取出之后,存钱罐被打碎(合约销毁)

// SPDX-License-Identifier: MIT
pragma solidity 0.8.18;

contract PiggyBank{
    event Deposit(uint amount);
    event Withdraw(uint amount);

    address public owner=msg.sender;

    // 收款
    receive() external payable { 
        emit Deposit(msg.value);
    }

    // 取款
    function withdraw()external {
        require(msg.sender==owner,"not owner");
        emit Withdraw(address(this).balance);
        selfdestruct(payable(msg.sender));
    }
}