// SPDX-License-Identifier: GPL-3.0
pragma solidity >=0.8.2 <0.9.0;
contract ADDRESS_CONSTRUCTOR {
address payable owner;
constructor() {
owner = payable(msg.sender);
}
uint a;
function setA(uint _a) public {
a = _a;
}
function getA() public view returns(uint) {
return a;
}
function add(uint _a, uint _b) public pure returns(uint) {
return _a+_b;
}
function add2(uint _a) public view returns(uint) {
return _a+a;
}
function getOwner() public view returns(address) {
return owner;
}
function deposit() public payable {}
function withdraw_1() public {
owner.transfer(1 ether);
}
function withdraw_all() public {
owner.transfer(address(this).balance);
}
}
배포
View EtherScan 클릭 후 From(지갑주소), To(배포한 컨트랙트 주소) 일치하는지 확인
To(컨트랙트 주소) 클릭 -> Contract -> Verify and Publish 클릭
다음과 같이 Fill in the blank & Continue
코드 전문 입력 후 verify and publish
이후엔 Contract 창 클릭 시 아래와 같이 Source Code가 뜸
Read Contract, Write Contract 확인 후 [Connected - Web3] 클릭해서 Metamask 연결 -> 빨간불에서 초록불로 전환!
-1
Write Contract - setA(12345 입력 후 write)
-2
Read Contract getA 12345뜨는지 확인
-3
Remix getA 12345 확인
setA Transaction Detail 확인
https://goerli.etherscan.io/tx/0x1fc6240527b7a533c2914c1f742b428687e848d0bb8d5fb452b1b43d904203f5
-4
set A에 123 입력 후
-5
getA에서 123 확인