你是否曾经好奇过,当你在以太坊上部署一个智能合约时,在字节码层面上到底发生了什么? 本文将通过一些简单的空合约例子,带你理解 Creation Code。 概述 从高层次来看,部署合约的钱包会向空地址发送一笔交易,其交易数据按照以下三...
1. onERC721Received 的作用与使用 1.1 onERC721Received 是什么? onERC721Received 是 ERC-721 标准中的一个回调函数,专门用于 合约 接收 NFT(ERC-721 代币)时...
基本概念 Solidity 是一种用于编写以太坊智能合约的高级编程语言。在 Solidity 中,数据类型分为值类型(基本数据类型)和引用类型。理解这些数据类型及其使用场景是编写高效、安全智能合约的基础。本文将详细介绍 Solidity...
原文链接:blog.trailofbits.com/2024... 译者:AI翻译官,校对:翻译小组 本文链接:learnblockchain.cn/article… 由 Artem Dinaburg 撰...
今天,终于把实战课程的所有项目代码全都搞完了。整个工程的代码量真的不少,包括合约、前端和很小部分的 Go 后端,差不多花了我一个月的时间。 这里面有不少比较复杂的逻辑,还踩了不少坑,但一个个坑填完,对我自己的知识体系其实也完善了不少,这对...
背景 不同区块链的状态是相互隔离的,当想要把A区块链的资产换成B区块链的资产,可以怎么做呢?简单的就是中心化交易所啦,但是体现不出去中心化的精神。而在本文章,会介绍一种去中心化的方法——基于哈希时间锁实现跨链交易。 <br>...
基本定义 本节是我们合约的开头,我们首先来介绍下合约的文件结构。一个单个合约文件的结构需要清晰、有条理,便于阅读、理解和维护。 文件头部声明 SPDX-License 标识符 用于声明合约的许可证类型(MIT、Apache-2...
简介 Natspec注释使Solidity代码更具有可读性和理解性。Natspec,Natural Language Specification,是使用自然语言注释向 Solidity 代码添加文档的标准格式。Natspec提供了一个易于...
在 Solidity 中,接口(interface)和抽象合约(abstract contract)都是用来定义合约的抽象行为,它们有相似之处,但也有一些关键的区别。下面是它们的用法、区别和联系。 接口(Interface) 接口是合约...
概述 以太坊是一个公共网络,在设计合约的接口时,除了考虑己方的交互外,还应该考虑公众是否方便获取到合约中的数据。 <br> 举例 现有一个订单簿交易系统,存在一个订单结构体, 包含owner,amount,price字段...