如果在函数中涉及到以太币的转移,需要使用到payable关键词。
在调用这笔函数的消息中附带以太币(remix中部署合约后按钮会变红色)。
pragma solidity ^0.8.7;
contract Payable{
address payable public owner;
constructor(){
owner = payable(msg.sender);
}
function deposit() external payable {}
function getBalance() external view returns (uint) {
return address(this).balance;
}
}
this 代表当前部署的合约地址;
获取合约账户余额 return address(this).balance;