루프 증분

이것은 우리 중 많은 사람들이 가스 효율을 알지 못한 채 사용할 수 있는 매우 간단한 기술입니다.

다음 계약을 고려하십시오.

contract Inc1{
    uint[] public arr = [0,1,2,3,4,5,6,7,8,9,10];
    uint total;

    function something() external {
        uint sum;
        uint[] memory _arr = arr;
        for (uint i; i < _arr.length; i += 1) {
            sum += _arr[i];
        }
        total = sum;
    }
}

contract Inc2{
    uint[] public arr = [0,1,2,3,4,5,6,7,8,9,10];
    uint total;

    function something() external {
        uint sum;
        uint[] memory _arr = arr;
        for (uint i; i < _arr.length; i++) {
            sum += _arr[i];
        }
        total = sum;
    }
}


두 계약 모두 배열을 반복하여 모든 요소를 ​​합산하는 기능something이 있습니다. 그러나 루프의 증가 스타일에 차이가 있습니다. Inc1에는 i +=1가 있고 Inc2에는 i++가 있습니다.

Inc1



Inc2

좋은 웹페이지 즐겨찾기