zoukankan      html  css  js  c++  java
  • Solidity函数修饰符

    修饰符有很多

    1.public和private:public表示公有都可以使用,private表示只能被这个合约使用

    2.internal和external:  internal跟private比较类似,但是internal修饰的可以被继承的合约使用

    3.external和public类似,但是不能被该合约使用

    4.pure和view:view表示这个函数不会修改和保存任何东西,pure表示只跟输出只跟输入有关,不但不在区块链写数据而且不会用里面的数据,只会用输入的数据

    5.还有修饰符modify:

       函数修饰符:函数修饰符跟函数是类似的,不用是用来修饰已有的函数,在其他语句执行前,为它先检验条件。关键字modifier(修饰符)

      调用函数修饰符常常用在函数的后面跟public和private等一个位置用来判断是否执行该函数

         函数修饰符通常使用下划线结尾

        如:modifier olderThan(uint _age,uint _userId){

          require(age[_userID]>= _age);

          _;  //以_;结尾表示函数正常返回继续执行之前的功能

      }

    6.payable修饰符(可支付):

      payable函数是可以接受以太币的特殊函数

      在以太坊中可以在调用函数的时候付钱给另一个合约如:

    contract OnlineStore { function buySomething() external payable {

      // 检查以确定0.001以太发送出去来运行函数:

      require(msg.value == 0.001 ether);

       // 如果为真,一些用来向函数调用者发送数字内容的逻辑

       transferThing(msg.sender);

      }

     }

      msg.value是用来查看向合约发送了多少以太币的办法,ether是一个以太网内建单元

  • 相关阅读:
    HYSBZ 3813 奇数国
    HYSBZ 4419 发微博
    HYSBZ 1079 着色方案
    HYSBZ 3506 排序机械臂
    HYSBZ 3224 Tyvj 1728 普通平衡树
    Unity 3D,地形属性
    nginx 的naginx 种包含include关键字
    Redis 出现NOAUTH Authentication required解决方案
    mysql 8.0出现 Public Key Retrieval is not allowed
    修改jar包里的源码时候需要注意的问题
  • 原文地址:https://www.cnblogs.com/beautiful7/p/12384919.html
Copyright © 2011-2022 走看看