草庐IT

solidity复利

全部标签

【Solidity学练系列1---搭建僵尸工厂】

备注本文绝大部分是直接从搭建僵尸工厂的一个以闯关学习Solidity相关知识的(国外?)网站抄写下来的,该网站自带sodility编辑器,而且每章节都必须按照实战演习的内容完成测试才能进入到下一章节,非常适合用一定编程基础的小伙伴自学solidity编程我整理这篇文章,一是分享觉得好的solidity学习资源给大伙;二是重新学习下solidity;三是整理上述网站的学习内容,让我自己找起来方便;上述网站是开源的,如本篇内容有侵权,可联系本博客删除;好记性不如烂笔头,抄一遍等于过一遍脑子,比扫一遍或看一遍的效果好的多得多;最后demo的步骤序号与标题序号一致,如果哪个步骤忘了具体含义,可查看对应

Solidity迁移Flow Cadence指南13-Flow 1000+合约大数据分析

熟读唐诗三百首,不会做诗也会吟,Flow合约哪里读?自然是链上了,Flow的链上合约都是开源的,只要知道合约地址,都可以直接使用API获得具体的合约代码。本节就把flow链上的主要合约下载下来,然后分析,哪些可以读,哪些可以抄@#¥@#¥数据来源本文主要分析合约账号数据,在以太坊中,可以通过地址的code类型来判断是否为合约地址,Flow中也是类似的,Flow账号的数据结构如下所示:messageAccount{  bytesaddress  uint64balance  bytescode  repeatedAccountKeykeys  mapcontracts}因此,我们也可以通过获取a

solidity最全开发详细语法解释以及示例说明

1.定义事件event2.调用事件呃,emit3.external--只能外部读取4.pure--纯函数(不能读不能写状态变量,只能有局部变量,完全不对链上有任何操作)5.returns()--返回(括号是参数返回类型)6.address地址类型7.view--只读方法(读链上)–不消耗gas8.pure--不会读链上9.constant--把状态变量变成常量(常量后变大写命名名称)有助于省gas费–不需要修改的值定为常量10.判断/require(i10”)|revert(在if里面写判断)\assert--断言进行测试,不包含错误信息11.modifier–函数修改器(可做公共功能,里面的

【Solidity开发基础-00:智能合约的概念以及Solidity的简介】

1.什么是智能合约?(SmartContract)历史背景:最早是尼克萨博于1995年提出,就是将法律条文写成可以执行的代码。后来V神(VitalikButerin)把它引入到以太坊中,表示以太坊程序能自动执行以及无法被干预的特点。以太坊是区块链和智能合约的完美结合,通过编写智能合约可以实现强大的功能,实现去中心化的应用开发。特点:智能合约允许在没有第三方的情况下进行可信交易,这些交易可追踪且不可逆转。智能合约本身是一堆代码,涉及到编程语言,语言的编译、部署、执行等一系列过程。Solidity就是目前最常用的用来编写智能合约的语言,以太坊也采用Solidity。2.Solidty语言简介:So

《NFT区块链进阶指南二》Etherscan验证Solidity智能合约(Remix插件验证)

文章目录一、验证说明二、EtherscanKey三、验证插件四、源码认证4.1Remix验证(推荐)4.1.1无构造参数合约验证4.1.2有构造参数合约验证4.2单文件验证(不推荐)4.3Hardhat部署(按照需要)五、验证结果六、文章预告前置参考文档:https://blog.csdn.net/sinat_34104446/article/details/130557703一、验证说明合约验证是上传合约源代码到etherscan过程,在智能合约项目中,通常都是提供源码验证,增加项目信任度验证合约后可以直接在etherscan上执行获取和设置方法,方便日常的管理员维护以下使用remix进行验

WEB3之路(一)-- solidity学习笔记

学习资料:GitHub-AmazingAng/WTFSolidity:我最近在重新学solidity,巩固一下细节,也写一个“Solidity极简入门”,供小白们使用(编程大佬可以另找教程),每周更新1-3讲。变量类型数值类型(ValueType):包括布尔型,整数型等等,这类变量赋值时候直接传递数值。引用类型(ReferenceType):包括数组和结构体,这类变量占空间大,赋值时候直接传递地址(类似指针)。映射类型(MappingType): Solidity里的哈希表。函数类型(FunctionType):Solidity文档里把函数归到数值类型,但我觉得他跟其他类型差别很大,所以单独分

Solidity 智能合约入门

Solidity智能合约入门存储合约示例将一个数据放置在链上//SPDX-License-Identifier:GPL-3.0pragmasolidity>=0.4.16我们对代码进行逐行分析,首先第一行第一行表明此段代码是被GPL-3.0所授权。默认情况下,在发布源代码时加入机器可读许可证说明是很重要的。GPL(GNUGeneralPublicLicenseVersions)GPL协议一般还可以分为GPL2.0和GPL3.0两种,而GPL3.0是更新一代的开源标准,在对用户专利的保护和DRM的限制方面有所更改。GPL协议同其它的自由软件许可证一样,许可社会公众享有:运行、复制软件的自由,发行

solidity合约中的interface怎么使用

#Interface##什么是interface?Interfaces和抽象合约比较类似,但是他们不能实现任何功能。通过定义好的interface我们可以在不清楚目标合约具体实现方式的情况下,调用目标的合约##如何定义interface?```solidityinterfaceCountry{  //定义接口中的方法和返回值}```##interface中不能做什么?-接口中不能定义state变量(包括constants)-不能继承-不能有构造函数(constructor)-不能实例化一个interface-不能实现接口中的方法-接口中的方法不能定义为私有或者内部方法,所有的方法必须定义为外部

solidity合约中的interface怎么使用

#Interface##什么是interface?Interfaces和抽象合约比较类似,但是他们不能实现任何功能。通过定义好的interface我们可以在不清楚目标合约具体实现方式的情况下,调用目标的合约##如何定义interface?```solidityinterfaceCountry{  //定义接口中的方法和返回值}```##interface中不能做什么?-接口中不能定义state变量(包括constants)-不能继承-不能有构造函数(constructor)-不能实例化一个interface-不能实现接口中的方法-接口中的方法不能定义为私有或者内部方法,所有的方法必须定义为外部

solidity部署和验证代理合约

相关合约使用openzeppelin的两个代理辅助合约ProxyAdmin.solTransparentUpgradeableProxy.sol地址openzeppelin-contracts/contracts/proxy/transparentatmaster·OpenZeppelin/openzeppelin-contracts部署逻辑合约//SPDX-License-Identifier:MITpragmasolidity^0.8.0;contractWeb03{constructor()public{}stringpublicconstanturl='web03.cn';mappin