balance
balance는 해당 특정 주소의 현재 이더의 잔액을 나타 냅니다.
주소.balance 와 같은 형태로 사용합니다.
msg.sender
msg.sender 는 스마트컨트랙과 상호 작용하는 주체라고 볼 수 있습니다.
msg.sender는 앞으로 설명해야 할 call vs delegate call에서 주요 내용이니 관심있게 봐주세요
영상과 같이 꼭 보시기 바랍니다!!!
// SPDX-License-Identifier: GPL-3.0
pragma solidity >=0.7.0 < 0.9.0;
contract MobileBanking{
event SendInfo(address _msgSender, uint256 _currentValue);
event MyCurrentValue(address _msgSender, uint256 _value);
event CurrentValueOfSomeone(address _msgSender, address _to,uint256 _value);
function sendEther(address payable _to) public payable {
require(msg.sender.balance>=msg.value, "Your balance is not enough");
_to.transfer(msg.value);
emit SendInfo(msg.sender,(msg.sender).balance);
}
function checkValueNow() public{
emit MyCurrentValue(msg.sender, msg.sender.balance);
}
function checkUserMoney(address _to) public{
emit CurrentValueOfSomeone(msg.sender,_to ,_to.balance);
}
}
솔리디티 강좌 35강 - fallback / receive 함수 (0) | 2021.10.04 |
---|---|
솔리디티 강좌 34강 - payable2 생성자 적용시, msg.sender 2 owner 적용해보기 (0) | 2021.10.03 |
솔리디티 강좌 32강 - payable,msg.value, 와 이더를 보내는 3가지 함수 (send, transfer, call) (0) | 2021.10.01 |
솔리디티 강좌 31강 - SPDX 라이센스/주석 (0) | 2021.09.30 |
솔리디티 강좌 30강 - modifier 모디파이어 (0) | 2021.09.29 |