struct (구조체)
pragma solidity ^0.4.19;
contract ZombieFactory {
uint dnaDigits = 16;
uint dnaModulus = 10 ** dnaDigits;
// 여기서 시작
struct Zombie {
uint dna;
string name;
}
}
Solidity는 복잡한 자료형을 표현하기 위해, 구조체를 제공한다.
배열
정적배열
// 2개의 원소를 담을 수 있는 고정 길이의 배열: (동적배열)
uint[2] fixedArray;
// 또다른 고정 배열으로 5개의 스트링을 담을 수 있다:
string[5] stringArray;
동적배열
// 동적 배열은 고정된 크기가 없으며 계속 크기가 커질 수 있다:
uint[] dynamicArray;
구조체의 활용
앞서 생성한 구조체의 동적 배열을 활용하면, 구조화된 데이터를 저장하는 것이 유용하다.
pragma solidity ^0.4.19;
contract ZombieFactory {
uint dnaDigits = 16;
uint dnaModulus = 10 ** dnaDigits;
struct Zombie {
string name;
uint dna;
}
Zombie[] public zombies;
}
구조체라는 단어는 약간 생소하지만, 생긴 모습을 보면 익숙하다. 형태가 wrapper class와 유사한 듯 싶다.
레퍼런스
- 크립토좀비 lesson 1 (https://cryptozombies.io/ko)
-
반응형
'블록체인 > 솔리디티' 카테고리의 다른 글
[솔리디티] 간단한 Smart Contract (코인 발행 예제) (0) | 2022.05.24 |
---|---|
[Solidity]Truffle, Ganache를 이용한 Smart Contract 작성 (0) | 2021.12.10 |
[Solidity] 함수 (0) | 2021.12.04 |
[Solidity] 변수 및 데이터 타입 (0) | 2021.12.01 |
[Solidity] 솔리디티 쉽게 공부할만한 사이트 추천, 크립토 좀비 (0) | 2021.12.01 |