NFT合约解析(4)——Counters.sol——2021.5.19
NFT合约解析(4)——Counters.sol
- 一丶配置需求:
- 1.环境需求:WeBASE-Front
- 2.合约语言:Solidity >=0.6.0 <0.8.0
- 二丶Counters.sol
- 三丶解析合约
- 四丶上一篇:NFT合约解析(3)——SafeMath.sol
- 五丶下一篇:未完待续
- 六丶参考相关文章
一丶配置需求:
1.环境需求:WeBASE-Front
2.合约语言:Solidity >=0.6.0 <0.8.0
二丶Counters.sol
pragma solidity >=0.6.0 <0.8.0;import "./SafeMath.sol";library Counters {using SafeMath for uint256;struct Counter {uint256 _value; }function current(Counter storage counter) internal view returns (uint256) {return counter._value;}function increment(Counter storage counter) internal {counter._value += 1;}function decrement(Counter storage counter) internal {counter._value = counter._value.sub(1);}
}
三丶解析合约
pragma solidity >=0.6.0 <0.8.0; //1
import "./SafeMath.sol"; //2
library Counters { //3using SafeMath for uint256; //4struct Counter { //5uint256 _value; //6} //7
- 第1行:申明版本
- 第2行:导入SafeMath.sol合约
- 第3行:创建库合约Counters
- 第4行:将SafeMath的所有库函数引用到Counters库合约的uint256类型
- 第5-7行:创建Counter结构体,申明一个uint256类型的状态变量_value
function current(Counter storage counter) internal view returns (uint256) { //1return counter._value; //2} //3function increment(Counter storage counter) internal { //4counter._value += 1; //5} //6function decrement(Counter storage counter) internal { //7counter._value = counter._value.sub(1); //8} //9
- 第1行:创建方法:current;参数:storage类型的结构体counter;internal:内置函数,view:不改变状态变量;returns (uint256): 返回值类型:uint256
- 第2-3行:返回counter._value值
- 第4行:创建方法:increment;参数:storage类型的结构体counter;internal:内置函数
- 第5-6行:counter._value的值加1
- 第7行:创建方法decrement;参数:storage类型的结构体counter;internal:内置函数
- 第8-9行:counter._value.sub(1):调用SafeMath的sub函数,counter._value作第一参数,1作第二参数;其结果当前counter._value接受
四丶上一篇:NFT合约解析(3)——SafeMath.sol
NFT合约解析(3)——SafeMath.sol
五丶下一篇:未完待续
六丶参考相关文章
solidity笔记(1)——第一篇
solidity笔记(2)——第二篇
solidity笔记(3)——abstract用法
solidity笔记(4)——冻结和交易属性
solidity笔记(5)——event用法
solidity笔记(6)——modifier用法
solidity笔记(7)——存储区域memory storage stack
solidity笔记(8)——pure用法
solidity笔记(9)——library用法
solidity笔记(10)——using for用法
solidity笔记(11)——struct用法
NFT合约解析(4)——Counters.sol——2021.5.19相关推荐
- NFT合约解析(3)——SafeMath.sol——2021.5.17
NFT合约解析(3)--SafeMath.sol 一丶配置需求: 1.环境需求:WeBASE-Front 2.合约语言:Solidity >=0.6.0 <0.8.0 二丶SafeMath ...
- NFT合约解析(2)——Ownable.sol——2021.5.10
NFT合约解析(2)--Ownable.sol 一丶配置需求: 1.环境需求:WeBASE-Front 2.合约语言:Solidity 0.6.10 二丶Ownable.sol合约 三丶解析合约 (1 ...
- 以太坊加密猫Crypto Kitty合约解析
以太坊加密猫Crypto Kitty合约源码深度解析 1. 加密猫核心合约概述 Crypto Kitty 核心业务合约总共有四个:KittyAdmin.KittyContract.KittyFacto ...
- NFT合约分析:ERC721A
概述 读者可前往我的博客获得更好的阅读体验. 本文主要介绍标准NFT实现的一个变体,即ERC721A合约实现的相关细节.ERC721A是由著名NFT系列Azuki提出,该系列NFT是著名的蓝筹NFT. ...
- NFT合约 从入门到精通
在<区块链杀手级应用落地畅想(上)>中我们提到,2021年被称为NFT"元年".在短时间内,NFT已不再局限于加密世界的投机价值,其释放的潜力吸引了越来越多的国际品牌, ...
- ERC721:全生命周期精析,妈妈再也不用担心我不会玩NFT合约啦
ERC721:全生命周期精析,妈妈再也不用担心我不会玩NFT合约啦 由于篇幅有限,本博客将围绕ERC721核心展开介绍,文章内容尽量做到通俗易懂,但其中不可避免地可能涉及一些新手不友好的概念,您可以查 ...
- 2021年1-9月墨天轮最受欢迎的20篇技术文章
自墨天轮社区成立以来,众多的的数据库相关从业者们在此相聚,大家技术专业.热爱分享.乐于交流,将自己日常的工作经验.技术雷区.学习笔记分享于此. 这些来自数据库系统架构.中间件.性能优化.交付等等不同岗 ...
- 2021.3.19两场面试总结
2021.3.19两场面试总结 第一场:10:30 java实习生 第二场 14:00 java实习生 第一场:10:30 java实习生 ①简单的自己介绍 ②根据所做项目提问语言.框架.前端.后端等 ...
- 职教平台粉笔科技递交港股IPO招股书:2021年1-9月营收26.3亿
2月28日晚间消息,职业教育平台粉笔科技向香港联交所递交IPO招股书,正式启动上市计划,中金.花旗.美银证券为联席保荐人. 招股书显示,粉笔科技主营业务为成人职业教育服务,在线培训.线下培训以及教材. ...
最新文章
- 4-1 图像特效介绍
- Java 中一个中文所占字节
- 控制台发送get命令_.NET Core使用命令行参数库构建控制台应用程序
- mysql中主从复制配置文件_MySQL主从复制 配置文件实例
- websocket 业务提醒 .net_7年.NET 面试 Java 的尴尬历程
- 面试经常被问到这 4 大开源框架,必须得好好研究一下了!
- 将自己的dcm数据制作成LUNA16数据集提供数据样式之代码整理
- fastadmin出现token验证错误!_gitee 拥有3.7k星星的极速后台框架—FastAdmin了解一下...
- NLP︱高级词向量表达(二)——FastText(简述、学习笔记)
- 比较 Cache 和虚拟存储器,说明它们的相似点和不同。
- 程序员必须要熟知的英文单词--更新中
- 85-94年河南农村娃们的童年记忆,追忆童年旧时光
- 蓝牙音箱延迟测试软件,首发漫步者Lolli Pods使用感受及延迟测试
- 深度清理C盘之非常有用
- java的无极分类,ThinkPHP菜单无极分类实例讲解
- 1024分论坛:人工智能创新应用的优化实践和多产业落地
- Vue-组件嵌套之——父组件向子组件传值
- linux系统32和64的区别,32位和64位的Linux系统区别
- 数字集成电路设计系列学习总结
- 零基础超简单的Docker入门教程 So Easy
热门文章
- 快排的优化(简直神乎其神了!!!)
- 高级服务框架(黑马)
- MyBatis HelloWorld
- php查询信息 wordpress插件,请求PHP大神协助修改一个WordPress插件
- 大数据初级笔记一:大数据入门介绍
- Casual Leave of Absence
- 西部数据移动硬盘My Passport Ultra 不支持在mac写入操作
- Android自定义相机不存储照片,转换成Bitmap上传
- 【SolidWorks相关】无法装入SolidWorks.DLL文件:GdtAnalysisSupport.dll 及 提示方程式语法格式不正确
- 17. Letter Combinations of a Phone Number (Medium)——电话号码的字母组合