08.只读函数

pure:不读取链上的变量

// SPDX-License-Identifier: MIT
pragma solidity 0.8.18;

contract ViewAndPureFunc{
    uint public num;

    //view: 读取链上的变量(状态变量和全局变量)
    function viewFunc() external view returns(uint){
        return num;
    }

    // pure:不读取链上的变量
    function pureFunc() external pure returns(uint){
        return 1;
    }

    // 为什么用view? 因为有状态变量num参与
    function addToNum(uint x) external view  returns (uint){
        return num+x;
    }

    // 为什么用pure,因为无区块链上变量参与
    function add(uint x, uint y) external pure returns (uint){
        return x+y;
    }
}