智能合约实战 solidity 语法学习 03 [ 函数修饰符 view public private constant payable ]

Posted www_vane

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了智能合约实战 solidity 语法学习 03 [ 函数修饰符 view public private constant payable ]相关的知识,希望对你有一定的参考价值。

public       共有,任何人都可以调用;
private      私有,只有智能合约内部可以调用;
external    仅合约外部可以调用,合约内部可以使用this调用;
interanl    仅合约内部和继承的合约可以调用;
view        函数会读取但是不会修改任何合约的状态变量
constant    函数会读取但是不会修改任何合约的状态变量(removed in 0.5.0)
pure         函数不使用任何智能合约的状态变量
payable      调用函数需要付钱,钱付给了智能合约的账户
returns      指定函数返回值

contract HelloGuanjianzi {
 
    uint public num = 0;
    // public view 未修改成员变量
    function testPublic() public pure {
         
         // testExternal(); 调用外部方法会编译报错
         testInternal();
    }

    // private remix部署后不展示此方法
    function testPrivate() private pure {
         
    }
 
    // pure 未使用状态变量
    function isEqual(int a, int b) public pure returns(bool) {
       return a == b;
    }

    // external
    function testExternal() external pure{

    }

    // internal remix部署后不展示此方法
    function testInternal() internal pure {
        
    }
    
    // payable 默认执行后

以上是关于智能合约实战 solidity 语法学习 03 [ 函数修饰符 view public private constant payable ]的主要内容,如果未能解决你的问题,请参考以下文章

智能合约实战 solidity 语法学习 03 [ 数据类型 bool uint address bytes enum mapping struct string ] 附代码

智能合约实战 solidity 语法学习 10 [ BNB合约解读 ] 附代码

智能合约实战 solidity 语法学习 10 [ BNB合约解读 ] 附代码

智能合约实战 solidity 语法学习 10 [ BNB合约解读 ] 附代码

智能合约实战 solidity 语法学习 09 [ 访问函数getter 合约创建 合约对象 合约继承IS ]

智能合约实战 solidity 语法学习 08 [ 访问函数getter 合约创建 合约对象 合约继承IS ]