solidity的require用法

这篇具有很好参考价值的文章主要介绍了solidity的require用法。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

require 函数用于确认条件有效性,例如输入变量,或合约状态变量是否满足条件,或验证外部合约调用返回的值

有两个参数:

        第一个参数为条件判断表达式,必选

        第二个参数为要返回的异常消息提醒,可选

如下面例子: 

require(msg.value % 2 == 0, "Even value required."); 带第二个参数

 require(msg.value % 2 == 0"); 不带第二个参数

判断msg.value%2==0是否为真,如果为真,继续执行require下面的语句,如果为假,则执行“Even value required.”,后面所有的代码将不会执行。

可以将require看作高级语言的异常来理解。但是有一点不同的是对燃料值GAS的消耗,当条件为假的时候,不会对gas有任何消耗,同时也不会在继续执行下面的语句。文章来源地址https://www.toymoban.com/news/detail-503789.html

到了这里,关于solidity的require用法的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Solidity中this、msg、block、tx、gas的用法

    目录 前言 1.this 2.msg 3.block 4.tx 5.gas 总结 在智能合约编程中,全局变量扮演着关键的角色,提供了访问外部信息和交易上下文的重要途径。本文将重点介绍 Solidity 中的五个重要全局变量: this 、 msg 、 block 、 tx 和 gas ,以及它们在智能合约中的用法和作用。通过深入了解这些

    2024年04月09日
    浏览(37)
  • @ConditionalOnProperty配置条件用法

    1.application.yml配置 2.指定prefix +name + havingValue 指定了havingValue,要把配置项的值与havingValue对比,一致则加载Bean @ConditionalOnProperty源码: 参考:SpringBoot教程(7) @ConditionalOnProperty 详细讲解和示例-CSDN博客

    2024年01月24日
    浏览(22)
  • Python高级用法:装饰器用于缓存

    缓存装饰器与参数检查十分相似,不过它重点是关注那些内部状态不会影响输出的函数。每组参数都可以链接到唯一的结果。这种编程风格是函数式编程的特点,当输入值有限时可以使用。 因此,缓存装饰器可以将输出与计算它所需要的参数放在一起,并在后续的调用中直接

    2024年01月25日
    浏览(36)
  • solidity函数签名的实现-solidity实现智能合约教程(8)

    猛戳订阅学习专栏🍁🍁 👉 solidity系列合约源码+解析 👈 🍁🍁 函数选择器: solidity调用函数时,calldata的前4个字节为指定要调用的函数,这4个字节称为函数选择器。 以下面的代码为例。它通过地址addr的调用合约的transfer方法。 abi.encodeWithSignature(…)返回的前4个字节是函数

    2024年02月16日
    浏览(40)
  • 前端Vue中import和require的用法分析

    在前端开发中,使用Vue框架进行项目开发是非常常见的。在Vue项目中,我们经常需要引入外部的模块或文件,这时候就会用到 import 和 require 这两个。本文将详细分析它们的用法,并提供具体的代码实例和解释。 在ES6中, import 是一种用于导入模块的语法。它可以帮助

    2024年02月11日
    浏览(27)
  • 细讲Labview条件结构用法及易错点

    本文讲解Labview条件结构的常用情景及易错点注意事项。帮助大家深刻理解并使用该结构,欢迎点赞关注加评论,有问题可以私聊或在下方评论区留言。 本文程序均附在文章结尾,可自行下载学习。 博主之前讲过Labview事件结构、For循环等的基础知识介绍,有兴趣强化基础的小

    2024年01月20日
    浏览(31)
  • sql中count()中加条件的用法

    sql函数count()中可以直接加条件 例:select             count(status = \\\'1\\\' or null) as \\\"ok\\\",             count(status = \\\'2\\\' or null) as \\\"warning\\\",             count(status in (\\\'3\\\', \\\'4\\\') or null) as \\\"ng\\\",             count(id) as \\\"sum\\\"         from             test 运行结果:2    

    2024年02月09日
    浏览(29)
  • 【ES6】require、export和import的用法

    在JavaScript中,require、export和import是Node.js的模块系统中的,用于处理模块间的依赖关系。 1、require:这是Node.js中引入模块的方法。当你需要使用其他模块提供的功能时,可以使用require来引入该模块。例如: common.js 运行 node .demo.js ,输出: 在上面的代码中,我

    2024年02月10日
    浏览(30)
  • Solidity 构造函数的理解

    构造函数的理解 solidity solidity构造函数指的是在合约部署的时候自动执行,如果在其他合约通过new等方式来实列化合约,则构造函数不会执行 其他高级语言 常用的编程语言java、go、python等高级语言,实列化对象时都会执行其构造函数。 总结 构造函数执行逻辑不一致,solid

    2024年02月11日
    浏览(29)
  • solidity函数重载以及调用

    call调用重载方法查数据 send调用重载方法写数据 这款是自主研发的支持高并发multicall库 查数据 写数据 一个合约可以有多个同名但参数类型不同的函数。这个过程称为“重载”,也适用于继承的函数。下面的例子展示 f 了合约范围内函数的重载 A 。 外部接口中也存在重载函

    2024年02月09日
    浏览(31)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包