event1- 정의

minii_
|2024. 6. 4. 00:28
반응형

솔리디티에는 print가 없고 대신 이벤트를 통해서 값을 출력할 수 있다.

이벤트로 값을 출력할 때 값은 블록 안에 저장되고, 이것을 언제든지 꺼내서 쓸 수 있다.

 

 

이벤트를 정의하기 위해서는 아래와 같이 사용하면 된다.

event키워드 이벤트명 출력값

 

 

// SPDX-License-Identifier: MIT

pragma solidity >=0.8.0 <0.9.0;

contract lec13 {
   
    event info(string name, uint256 money);
    
    function sendMoney() public {
        emit info("KimDaeJin", 1000);
    }
}

해당 코드에서는 info라는 이벤트를 생성했고 string name, uint256 money라는 두 개의 값들을 출력하려고 한다.

그리고 sendMoney라는 돈을 보낼 때 사용하는 함수를 생성했다.

이 함수는 돈을 보냈을 때 누가 보냈는지에 대한 기록을 하기 위해 사용하고 info에 이름과 값을 전달하여 출력하려고 한다.

이 값들이 출력이 되면 블록체인 안에 있는 블록에 저장이 된다.

이 블록이 저장되면 불변하기 때문에 언제든지 꺼내서 쓸 수 있다.

 

 

배포를 하고 확인해 보면 logs 값에 KimDaeJin과 1000이 출력되는 것을 확인할 수 있다.

이것은 event info가 블록 안에 각인되었다는 것을 알 수 있다.

→ 따라서 언제든지 이 info의 값들을 가져와서 쓸 수 있다.

반응형

'PBL > 솔리디티' 카테고리의 다른 글

상속4 - super, 상속의 순서  (0) 2024.06.11
event2 - indexed  (0) 2024.06.04
상속3 - 두개 이상 상속하기  (0) 2024.05.28
상속2 - overriding 오버라이딩  (0) 2024.05.28
상속1 - 정의  (0) 2024.05.22