19일차 - 함수 수정자

특사-VC / 30일의 견고함


스마트 계약 개발을 배우기 위한 30일간의 Solidity 단계별 가이드.




Solidity Series의 19 중 Day30입니다.
오늘은 Solidity의 Function Modifiers에 대해 배웠습니다.

수정자는 함수 동작 실행을 지원합니다. 함수 수정자를 사용하여 함수의 동작을 변경할 수 있으며 함수가 실행되기 전이나 후에 호출할 수도 있습니다.

Solidity 기능 수정자는 다음에 도움이 됩니다.
  • 액세스 제한
  • 입력 정확도 검사
  • 해킹 방지

  • 예시:

    contract Owner {
       modifier onlyOwner {
          require(msg.sender == owner);
          _;
       }
    }
    


    특수 기호 "_;"가 있는 곳에 함수 본문이 삽입됩니다. 수정자의 정의에 나타납니다. 따라서 이 함수를 호출하는 동안 modifier의 조건이 만족되면 함수가 실행되고 그렇지 않으면 예외가 발생합니다.

    예시:

    // SPDX-License-Identifier: MIT
    pragma solidity ^0.8.7;
    
    contract Mint {
        constructor()  {
            owner = msg.sender;
        }
        modifier onlyOwner {
          require(msg.sender == owner);
          _;
    
        function _mint(address to , uint tokenId) onlyOwner {
          mint(to, tokenId);
        }
    }
    

    좋은 웹페이지 즐겨찾기