일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- 파이썬
- 백준
- 클라우드
- react
- 가상화
- VUE
- BFS
- 쿠버네티스
- 타입스크립트
- next.js
- kubernetes
- 웹
- 리액트
- 백엔드
- k8s
- 컴퓨터공학
- 블록체인
- TypeScript
- docker
- AWS
- CSS
- 이더리움
- 솔리디티
- JavaScript
- es6
- 이슈
- 프론트엔드
- 자바스크립트
- HTML
- 알고리즘
Archives
- Today
- Total
즐겁게, 코드
솔리디티 - 04. 매핑과 msg.sender 본문
1. 매핑
매핑(mapping) 은 "키 - 값" 구조로 데이터를 저장할 때 활용되는 타입입니다.
(자바스크립트의 Object 나 파이썬의 딕셔너리를 생각하시면 됩니다)
// key: uint 형, value: address 형
mapping(uint => address) public zombieToOwner;
// key: address 형, value: uint 형
mapping(address => uint) ownerZombieCount;
매핑값을 읽고 쓰기 위해서는 (매핑 이름)[키] 의 형태로 접근할 수 있습니다.
mapping(uint => address) public zombieToOwner;
// uint형 키 0에 호출한 사람의 주소(address)가 할당된 모습입니다.
zombieToOwner[0] = msg.sender;
2. msg.sender
솔리디티에는 모든 함수에서 이용 가능한 특정 전역 변수들이 있는데요, 그 중 하나가 현재 함수를 호출한 사람 (혹은 컨트랙트)의 주소를 가리키는 msg.sender
입니다.
(참고: 솔리디티에서 함수는 언제나 컨트랙트 외부에서 호출됩니다. 컨트랙트는 누군가가 컨트랙트의 함수를 호출할 때까지 블록체인 상에서 아무 것도 하지 않고 있어, 외부에서 함수를 호출하기 위해 msg.sender
가 필요합니다.)
반응형
'💬 언어 > Solidity' 카테고리의 다른 글
솔리디티 - 06. 상속과 인터페이스 (0) | 2021.04.16 |
---|---|
솔리디티 - 05. Storage와 Memory (0) | 2021.04.16 |
솔리디티 - 03. 이벤트 (0) | 2021.04.16 |
keccak256 함수로 난수 생성하기 (0) | 2021.04.16 |
솔리디티 - 02. 기본 문법 2 (함수) (0) | 2021.04.15 |
Comments
소소한 팁 : 광고를 눌러주시면, 제가 뮤지컬을 마음껏 보러다닐 수 있어요!
와!! 바로 눌러야겠네요! 😆