검색
Last updated 2022-11-22
...Ether Contract에 ETH를 보내는 방법은 3가지 address.transfer(amount): 실패시 error address.send(amount): 성공여부 반환(false면 revert()를 call하자) address.call{value:msg.value}(""): (result, data)를 반환 Contract vs. Library library는 state가 없고 utility들만 제공함 참고자료 (한글) solidity - payable (1) 개념 Units and global variables: API Reference......
1/7/2024
...longArgument1, longArgument2, longArgument3 ); 나쁜 예#1 thisFunctionIsReallyLong(longArgument1, longArgument2, longArgument3); 나쁜 예#2 thisFunctionIsReallyLong( longArgument1, longArgument2, longArgument3 ); Source code UTF-8 source file이름은 contract나 library이름에 맞춘다 source file 하나에 2개이상의 contract가 있으면 핵심 contract를 기준으로 한다 Contract이름은 CapWord 스타일을 따른다 (Pascal case)......
1/7/2024
...가장 기본적인 호출 B의 function안에서 보면 msg.sender는 Contract A contract B의 state가 변경됨 delegateCall() Contract B의 함수에게 내(Contract A) state를 변경시킬 권한을 넘겨주면서 호출 msg.sender는 A(call()과 동일) 즉, Contract A의 state가 변경됨 (Contract A state의 field들이 Contract B와 같아야 함)......
1/7/2024
...call에는 msg.value가 0이다. 하지만 payable 함수를 호출할 때는 contract balance에 추가도 되고 함수 body도 수행된다. receive()가 없어도 동작한다 Contract에서 다음 두가지 callback을 구현할 수 있다 fallback() external payable 없는 함수를 호출하는 경우 receive() external payable 이 contract주소로 ETH입금이 발생한 경우......
1/7/2024