最近有点背...
  • About Me

  • 兴趣爱好



  • 上一张

Solidity的Using for的使用

前言

其实呢,今天刚接触Using for的时候,我并没有看懂它的意思。官方的文档有些晦涩难懂,导致我也产生了它与import的区别这样的疑问。

使用

与import的联系与区别

先回答第二个问题,using A for B与import有什么区别?

import是讲某个合约contract或者某个库lib导入到当前文件,它是using的前提;import后,当前文件内可以引用被引入文件内定义的library或contract。

DAPP开发流程

前言

最近DAPP的开发貌似很火,学习了区块链的一些知识之后,相信有很多人和我一样,也想了解开发一个DAPP是一个怎样的流程。

下面将通过一个简单的栗子来初识一下DAPP的开发流程,届时,我们也将开发出第一个DAPP应用–《永存的留言》。

项目介绍

《永存的留言》是一个基于以太坊的在线留言平台。它的功能十分简单–用户可以在平台上进行留言,平台每10s随机的展示留言内容。
但是它的特点在于,利用区块链的特性,保证了数据的真实性、完整性和安全性。

永存的留言

《好雨时节》:生活在暧昧中继续

这是拍摄过《八月照相馆》、《外出》的韩国导演许秦豪的第五部长片,他用其习惯的舒缓的叙事方式讲述了发生在中国成都的一个若即若离的爱情故事。

Solidity函数修改器的基本概念及应用

基本概念

函数修改器可以一定程度上改变函数的行为。可以作为函数执行的先行条件,如果符合函数修改器定义的条件,才可以执行函数体内容。关于函数修改器,可以把理解成if的变相。

函数修改器定义

函数修改器的定义语法如下:

1
2
3
4
5
6
7
8
modifier 修改器名 {
条件体..
_;
}

function a() 修改器名 {
函数体..
}

当要执行a()时,会先去执行修改器,判断条件体,如果符合条件,才会继续执行a();如果不符合条件,a()将不执行。”_;”在这里表示的是a().
通过一个小栗子,直观的感受下:

Solidity的结构体与映射

结构体(Structs)

Solidity提供结构体来自定义类型,自定义的类型是引用类型。
结构体内可以包含整型、字符串、数组、结构体、映射等数据类型。
如果你尝试对memory的映射类型赋值,会报错
Error: Member "map" is not available in struct StructMappingInitial.A memory outside of storage.
另外,结构体的可见性,目前只支持internal.只能在当前合约或者子合约中使用,而且引用结构体为参数的函数必须显性的声明为internal。
我们通过实例来理解它。