📄️ 开始编写合约
前面介绍 MetaMask 和 Remix 使用时,我们了解了如何编译部署 Solidity智能合约。
📄️ 数据类型
对以太坊上智能合约开发有了一些宏观的了解,现在开始探索Solidity 语言特性,我们知道Solidity 是一门静态类型语言,和常见的静态类型语言有C、C++、Java类似,需要在编码时为每个变量(本地或状态变量)指定类型。
📄️ 使用整型
和大多数语言一样,但我们要表达一个数值时,通常用整型(这种数据类型)来表达。
📄️ 使用地址类型
在前面的开发工具 - MetaMask 钱包 一节中,我们创建了自己的钱包账号。
📄️ 合约类型
每一个合约,合约本身也是一个数据类型, 称为合约类型,如下代码定义了一个Hello合约类型:
📄️ 数组类型
和大多数语言一样, 在一个类型后面加上一个[],就构成一个数组类型,表示可以存储一组该类型的值。
📄️ 结构体
结构体定义
📄️ 映射(mapping)
映射类型是一种键值对的映射关系存储结构, 在功能上和Java的Map、Python的Dict差不多。
📄️ 合约如何接收 ETH
我们要把合约的ETH 转出是很容易的,我们在地址一节已经介绍过。
📄️ 函数修改器(modifier)
修改器作用
📄️ 事件(Event)
这一节我们将介绍事件的使用,为什么需要事件,如何定义与触发事件,并且介绍了3个方法获取事件。在最后一个部分,我还结合自己的实践经验,介绍如何善用事件。
📄️ 错误处理
什么是错误处理
📄️ 继承
理解继承
📄️ 接口及合约交互
在上一节继承中,我们已经理解了一些抽象的概念:把各个合约都拥有的功能,作为统一接口在父合约里提供,让所有的子合约都可以继承。
📄️ 库
理解库