Solidity의 값 유형

Solidity는 스마트 계약 프로그래밍 언어입니다. 이더리움 블록체인용 스마트 계약을 작성하는 데 가장 일반적으로 사용되지만 이더리움 가상 머신(EVM)을 사용하는 모든 블록체인에서 스마트 계약을 구현하는 데 사용할 수 있습니다.
다른 모든 프로그래밍 언어와 마찬가지로 Solidity의 데이터 유형은 값과 참조의 두 가지 유형으로 분류할 수 있습니다.

  • 값: 값은 단순히 데이터 유형이 값을 저장한다는 것을 의미합니다. 예를 들어 부울은 true 또는 false 를 저장합니다.

  • 참조: 참조 유형의 데이터 유형은 값을 저장하지 않고 실제 데이터가 저장된 위치에 대한 참조를 저장합니다. 예를 들어 배열은 참조 유형의 데이터 유형입니다.

  • 이 기사에서는 가치 데이터 유형과 견고성 계약에서 이를 사용하는 방법을 살펴보겠습니다.

    부울



    contract ValueType {
        bool public boo= true;
    }
    

    여기에 ValueType라는 이름의 계약이 있습니다. 이 계약 내 모든 값 데이터 유형을 선언합니다.
    계약에서 bool 키워드를 사용하여 부울 데이터 유형을 선언합니다. 이 부울은 계약 외부에서 호출할 수 있도록 public로 선언됩니다.
    변수의 이름은 boo 이고 값은 true 로 설정되며 부울 값은 true 또는 false 가 될 수 있습니다.

    부호 없는 정수



    다음으로 부호 없는 정수 데이터 유형을 살펴보겠습니다.
    부호 없는 정수는 데이터 유형이 0보다 크거나 같아야 함을 의미합니다. 부호 없는 정수에는 음수를 사용할 수 없으며 0 또는 양수만 사용할 수 있습니다.

    contract ValueType {
        uint public numU= 123;
    }
    


    여기서 uint 키워드는 부호 없는 정수를 선언하는 데 사용되며 변수는 public 로 선언되고 변수 이름은 numU 로 지정되며 해당 값은 123 로 설정됩니다.
    키워드 uint0에서 2^256 - 1까지의 별칭입니다.uint , uint8 등에서 시작하여 uint16 까지 가는 범위가 다른 uint256 의 다양한 변형이 있습니다.
    이러한 uint 의 변형 중에서 우리가 자주 보게 될 가장 일반적인 것은 uint256 입니다.
    부호 없는 정수는 0보다 큰 숫자만 지원하지만 음수를 사용해야 하는 경우에는 정수를 사용합니다.

    정수



    다음으로 정수에 대해 살펴보겠습니다.
    정수를 사용하면 계약에서 양수와 음수를 사용할 수 있습니다.

    contract ValueType {
        int public numI= -123;
    }
    


    정수는 int 키워드를 사용하여 선언되고 여기서 변수는 public 로 선언되고 변수에는 numI 라는 이름이 지정되고 값은 -123 로 설정됩니다.
    부호 없는 정수와 마찬가지로 키워드 intint256의 별칭이기도 합니다.int , int8 에서 int16 까지 다양한 변형이 있습니다.

    주소



    Solidity에서 많이 보게 될 또 다른 값 데이터 유형은 type int256 입니다.

    contract ValueType {
        address public addr= 0xFAed2F163D65141FbD48fD5FE1a4C08c2e50a4bF;
    }
    


    주소 데이터 유형은 키워드address를 사용하여 선언하고 이 변수는 address로 만들고 주소에 이름public을 지정하고 값을 임의의 이더리움 지갑 주소로 설정합니다.

    바이트32



    이 기사에서 살펴볼 마지막 값 데이터 유형은 addr 입니다. 이 데이터 유형은 byte32라는 견고성에서 사용할 수 있는 암호화 캐시 기능으로 작업할 때 발생합니다.

    contract ValueType {
        bytes32 public b32= 0x0000000000000000000000000000000;
    }
    

    kachek256 키워드를 사용하여 bytes32를 선언하고 변수를 공개하고 bytes32라는 이름을 지정하면 여기서 값은 임의의 32바이트로 설정됩니다.

    결론



    이 기사에서는 Solidity에서 사용할 수 있는 모든 Valuetypes를 다루지 않았지만 스마트 계약을 작성할 때 접하게 되는 가장 일반적인 값 유형입니다. Solidity Valuetypes의 전체 목록은 documentation에서 찾을 수 있습니다.

    읽어주셔서 감사합니다. 제가 즐겁게 쓴 만큼 재미있게 읽으셨다면 이 글을 좋아하고 친구들과 공유하고 👨‍💻에서 저와 연결해 주세요.

    좋은 웹페이지 즐겨찾기