관리 메뉴

즐겁게, 코드

솔리디티 - 04. 매핑과 msg.sender 본문

💬 언어/Solidity

솔리디티 - 04. 매핑과 msg.sender

Chamming2 2021. 4. 16. 14:59

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가 필요합니다.)

 

 

반응형
Comments
소소한 팁 : 광고를 눌러주시면, 제가 뮤지컬을 마음껏 보러다닐 수 있어요!
와!! 바로 눌러야겠네요! 😆