이전글
[솔리디티] 7. view 함수, pure 함수, 모디파이어, 오버로딩
이전글 [솔리디티] 6. 함수, 가시성 지정자, 반환 값, 지역 변수 이전글 [솔리디티] 5. 연산자, 전역 변수, 단위 이전글 [솔리디티] 4. 생성자, 매개변수, 값 타입과 참조 타입, immutable 이전글 [솔리디
kwjdnjs.tistory.com
매핑, 구조체, 열거형
이번 글에서는 매핑, 구조체, 열거형에 대해 알아보겠습니다.
1. 매핑
매핑은 파이썬의 딕셔너리와 유사하게 키와 값을 하나의 쌍으로 저장할 수 있는 타입입니다. 다음과 같이 mapping으로 선언하여 사용할 수 있습니다.
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.18;
contract Mapping {
mapping(address => uint8) public map;
function saveNum(uint8 n) public {
map[msg.sender] = n;
}
}
2. 구조체
솔리디티에서의 구조체는 C언어에서 사용하는 구조체와 동일한 개념입니다. 참조형 타입이며 다음과 같이 사용할 수 있습니다.
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.18;
contract Struct {
struct Pos {
uint8 x;
uint8 y;
}
Pos public pos;
function savePos(uint8 _x, uint8 _y) public {
pos.x = _x;
pos.y = _y;
}
}
3. 열거형
마지막으로 열거형에 대해 알아보겠습니다. 솔리디티에서의 열거형은 다른 프로그밍언어에서 사용하는 열거형과 동일한 개념입니다. 하나의 열거형에 최대 256개의 값을 저장할 수 있습니다. 값 타입이며 다음과 같이 사용할 수 있습니다.
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.18;
contract Enum {
enum Color { Black, White, Red, Blue, Yellow }
Color public color;
function setRed() public {
color = Color.Red;
}
function setWhite() public {
color = Color.White;
}
}
지금까지 매핑, 구조체, 열거형에 대해 알아봤습니다. 감사합니다.
다음글
[솔리디티] 9. 조건문, 반복문
이전글 [솔리디티] 8. 매핑, 구조체, 열거형 이전글 [솔리디티] 7. view 함수, pure 함수, 모디파이어, 오버로딩 이전글 [솔리디티] 6. 함수, 가시성 지정자, 반환 값, 지역 변수 이전글 [솔리디티] 5. 연
kwjdnjs.tistory.com
'이더리움 > 솔리디티' 카테고리의 다른 글
[솔리디티] 10. 이벤트 (0) | 2023.07.27 |
---|---|
[솔리디티] 9. 조건문, 반복문 (0) | 2023.07.26 |
[솔리디티] 7. view 함수, pure 함수, 모디파이어, 오버로딩 (0) | 2023.07.20 |
[솔리디티] 6. 함수, 가시성 지정자, 반환 값, 지역 변수 (0) | 2023.07.17 |
[솔리디티] 5. 연산자, 전역 변수, 단위 (0) | 2023.07.13 |