본문 바로가기
BlockChain/solidity

[Solidity] 매핑(mapping) 알아보기

by BEJM 2022. 5. 20.

매핑

매핑은 스토리지 데이터 영역에서 key-value 구조로 데이터를 저장합니다.

 

기본 형식과 사용 예시

기본 형식
mapping(<key type> => <value type>) variable

 

사용 예시
mapping(address => uint) public accountBalance;
mapping(uint => string) idToName;
mapping(address => mapping(address => uint)) public allowances;

// mapping에 값을 저장
function setNum(uint number) {
    accountBalance[msg.sender] = number;
}
// mapping에 저장된 값을 사용
function getNum() view returns(uint){
    return accountBalance[msg.sender];
}

 

msg.sender

msg.sender는 현재 함수(또는 스마트 컨트랙트)를 호출한 주소를 가리킵니다. mapping과 함께 많이 사용합니다.

댓글