728x90
Solidity에서 stare 변수와 Local 변수 관련 내용입니다.
블록체인 심화과정에서 배운 내용인데,
Solidity 파일의 특징을 살펴보고자 기록합니다.
라이센스와 버전이 제일 위 2줄에 들어가고, state 변수, 그리고 함수에 Local 변수가 들어간 모습을 볼 수 있습니다.
// SPDX-License-Identifier: GPL-3.0
pragma solidity >=0.7.0 <0.9.0;
// State 변수와 Local 변수.
contract StateLocal {
string public name = "John"; // State 변수. 전개하면 보임.
uint public age = 27; // State 변수. 전개하면 보임.
string public constant symbol = "KRW"; // Constant한 state 변수 선언과 값 정의!
address private immutable owner; // Immutable 한 state 변수 선언.
constructor(){
owner = msg.sender; // Immutable 한 state 변수의 값 정의 (1회)!
}
function getResult() public returns (uint){
age = 21; // State 변수 변경 가능.
// symbol = "ETC"; // 오류! Constant한 state 변수는 변경 불가능!
// owner = msg.sender; // 오류! Immutable한 state 변수는 변경 불가능!
uint a = 11; // Local 변수. 외부에서 볼 수 없음.
uint b = 22; // Local 변수. 외부에서 볼 수 없음.
uint res = a + b; // Local 변수. 외부에서 볼 수 없음.
return res;
}
}
자바, 자바스크립트, 파이썬, 코틀린...
여러 언어를 배우다 보니 비슷한 점도 있고, 차이점도 있군요.
함수에서 리턴값을 적어주는 건 코틀린 문법과 비슷한 것 같습니다.
728x90