좀 더 복잡한 자료형이 필요할 경우 구조체(struct) 사용
struct Person {
uint age;
string name;
}
배열
어떤 것의 모음집이 필요할 때 _배열_ 을 사용
솔리디티에는 _정적_배열과 _동적_배열이 있음
// 2개의 원소를 담을 수 있는 고정 길이의 배열:
uint[2] fixedArray;
// 또다른 고정 배열으로 5개의 스트링을 담을 수 있다:
string[5] stringArray;
// 동적 배열은 고정된 크기가 없으며 계속 크기가 커질 수 있다:
uint[] dynamicArray;
구조체의 배열을 생성하는 것도 가능
Person[] people; // 동적 배열로 원소를 계속해서 추가할 수 있음
// 마치 데이터베이스처럼 컨트랙트에 구조화 된 데이터를 저장하는데 유용함
public 배열
Person[] public people;
public 으로 배열을 선언할 경우 getter 메소드를 자동으로 생성해줌
그럼 외부에서 다른 컨트랙트들이 이 배열을 읽을 수 있게됨 (쓸 수는 없음)
-> 컨트랙트에 공개 데이터를 저장할 때 유용함
솔리디티에서의 함수 선언
function eatHamburgers(string _name, uint _amount) {
}
함수 인자명을 언더스코어(_)로 시작해서 전역 변수와 구별하는 것이 관례
함수 호출 방법
eatHamburgers("vitalik", 100);
' :D > block chain' 카테고리의 다른 글
[Solidity] Keccak256과 형 변환 (0) | 2022.02.15 |
---|---|
[Solidity] 함수의 반환값과 함수 제어자 (0) | 2022.02.15 |
[Solidity] Private / Public / Internal / External (0) | 2022.02.15 |
[Solidity] 구조체와 배열 활용 (0) | 2022.02.15 |
[Solidity] 언어 기본 문법 1 (contract 생성, 변수 저장, 연산) (0) | 2022.02.15 |