以太坊技术开发课程05:Solidity函数|事件|日志学习介绍(图文)

solidity函数在数据类型里属于值类型,函数是智能合约结构的重要组成部分,那么我们下面在学习solidity的过程中,深入介绍什么是solidity函数,以及函数的结构是什么样子的。

Solidity函数(Function Types)

函数概念介绍

  1. 在Solidity中函数是一种特殊数据类型(值类型)
  2. 还可以将一个函数作为参数进行传递。
  3. 也可以在函数调用中返回一个函数。
  4. 函数名本质就是这段语句块在内存中的地址。

函数格式定义 (重点)

function () {internal(默认)|external} [constant] [payable] [returns ()]

  1. 函数分为两大类:internal、external与Java的访问修饰符非常相似,其中private (当前函数内部调用)、internal (当前函数和子函数)、public (内外都可以调用)、external(仅仅外部调用)。
  2. 在5.0以后版本,函数必须要指定访问修饰符。
  3. 在5.0以后版本,contant已经被view、pure取代。
  4. Solidity普通的函数支持多态,但构造函数不支持。

函数代码演示:

solidity函数代码

Solidity事件与日志 (重点)

事件与日志的意义

  1. 事件是以太坊EVM提供的一种基础设施,事件可以用来操作记录,存储为日志。
  2. 一种区块链中的特殊数据结构。 这些日志与地址相关联,被并入区块链中,(区块 --> 交易地址 --> 交易日志)。
  3. Solidity没有print,console.log方法,因此增加了调试的难度,我们可以采用实事件 + 日志来解决。
  4. 总的来说:事件强调功能,可以触发是一种行为,而日志强调存储。
Solidity事件代码演示:
solidity事件代码

特别提示:Event支持多态,且采用的是大驼峰命名法(第一个字母大写),而普通函数采用的是小驼峰命名法(第一个字母小写)。

免责声明:本文由信比特作者原创文章,不构成投资建议,请谨慎对待。

版权声明:信比特作者保留原创权利。文章为作者独立观点,转载请注明出处

原文链接:http://www.bitpoa.com/BlockchainCollege/113.html

生成海报
收藏

相关推荐

0 条评论

微信扫一扫

微信扫一扫

微信扫一扫,分享到朋友圈

 以太坊技术开发课程05:Solidity函数|事件|日志学习介绍(图文)