淄博网站建设app开发公司标志设计图片大全免费

news/2025/9/26 2:45:31/文章来源:
淄博网站建设app开发,公司标志设计图片大全免费,linux 网站建设模板,西安高端网站定制智能合约简单来讲就是#xff1a;部署在去中心化区块链上的一个合约或者一组指令#xff0c;当这个合约或者这组指令被部署以后#xff0c;它就不能被改变了#xff0c;并会自动执行#xff0c;每个人都可以看到合约里面的条款。更深层次的理解就是#xff1a;这些代码会…智能合约简单来讲就是部署在去中心化区块链上的一个合约或者一组指令当这个合约或者这组指令被部署以后它就不能被改变了并会自动执行每个人都可以看到合约里面的条款。更深层次的理解就是这些代码会被去中心化地执行就像一群人运行了某个软件这意味着没有一个人或者一个主体可以修改这些合约或者更改条款。 1.智能合约行业应用 DeFi代表去中心化金融它让用户可以参与到金融市场而不需要经过中心化中介。 比如Robinhood你不需要再信任Robinhood会持续给你提供服务让你接入市场相反你可以直接查看智能合约对这样就可以进入市场。或者在2008年金融危机你再也不用相信这些集团和机构会在后台给你提供正确的信息你在区块链上就可以看到所有的东西它们都是透明的。你可以简单安全和高效的参与很多事情像是货币市场和复杂的金融产品截止到2022年为止有大概2000亿美元的资产在DeFi中被管理并且还在快速增长。 Dao去中心化自治组织是另一个应用。Dao是完全被去中心化管理的组织它们被区块链上的一组指令或者一个智能合约管理这样的管理方式很有优势参与更加简单规则黑白分明并且你可以直接在链上看到所有的事情。投票和治理使用的是完全去中心化的技术区块链是能够让我们推动治理技术进步的重要技术之一。它让治理更加的高效公平和合理。 NFT即非同质化代币它在某种程度是一种电子艺术品或者是一个独一无二的资产。像是无聊猿和加密朋克这样的项目革新了人们获得报酬的方式人们可以通过工作展示创造性和状态而获得报酬 2.Remix介绍 Remix是一个强大的工具因为它有很多功能帮助我们查看和交互智能合约虽然我们会渐渐脱离Remix使用本地开发环境但是Remix对学习智能合约基础非常有帮助Remix官网。 当你进入Remix页面你会发现有很多东西还有很多Plugin因为我们要使用Solidity也就是智能合约的语言。 3.Solidity数据类型 Solidity有多种基础数据类型最基础的四种数据类型是booleanuintint和address。 还有数组array、结构体struct和映射mapping或者还有bytes它们是一种更底层的数据类型。 boolean定义true和false uint是无符号整数表示这个数字不是可正可负只能是正数uint比较特殊我们可以决定给它分配的空间这个数字一直可以大到uint256uint默认就是uint256。通常把分配空间显式的写出来是一个好习惯。 int可以表示正数或负数同样的我们也可以决定分配给int变量的空间。 address表示地址就像在MetaMask中看到的地址一样。 具体在Remix定义的变量类型代码如下所示 // SPDX-License-Identifier: MIT // 定义solidity的版本 此处允许0.8.8以上的版本但不允许0.9.0以上的版本 pragma solidity ^0.8.8 0.9.0;contract SimpleStorage{bool hasFavoriteNumber false;//uint允许分配的空间只能以byte的速度增长 uint8 uint16...uint256 最大只能到uint256uint256 favoriteNumber 123;int64 favoriteInt -5;string favoriteNumberInText five;//string类型变量只允许存储文本address myAddress 0x993CC624c1350D52cCbe32F77652362F82fc4D41; }4.Solidity函数 函数或者方法指的是独立模块在我们调用的时候会执行某些指令。Solidity中定义函数与JavaScript中类似使用function关键字即可。 函数变量有四种可见度标识符 public在外部和内部都可见任何与合约交互的人都可以看到被public修饰的变量和函数给变量或函数加上public修饰符实际上给给其创建了getter函数创建一个返回其值的函数。 privateprivate表示只有这个合约可以调用这个函数private表示只对合约内部可见 externalexternal表示只对合约外部可见 internalinternal表示只有这个合约或者继承它的合约可以读取 一般变量或函数的修饰符的默认值是internal表示只对本合约和继承合约可见 另外solidity中还有两个关键字可以用来修饰函数标识函数的调用不需要消耗gas分别是view和pure如果一个函数被view修饰意味着我们只会读取这个合约的状态。被view修饰的函数不允许修改任何状态你在其函数中不能修改任何状态同理pure函数也不允许修改状态同时pure函数也不允许读取区块链数据。pure函数通常用于执行数学运算或其他不涉及状态更改的计算。 具体关于函数实现的solidity代码如下所示 // SPDX-License-Identifier: MIT pragma solidity ^0.8.8 0.9.0;contract SimpleStorage{//uint允许分配的空间只能以byte的速度增长 uint8 uint16...uint256 最大只能到uint256uint256 public favoriteNumber 123;//设置公开可见function store(uint256 _favoriteNumber) public {favoriteNumber _favoriteNumber;}function getFavoriteNumber() public view returns(uint256){return favoriteNumber;}function testPure() pure public returns(uint){return (11);} } 5.Mapping映射 使用mapping映射比数组遍历查找元素更加高效可以达到O(1)级别而数组遍历是O(n)级别 你可以简单把映射想象成字典它是一组键值对每个key键返回与该键关联的某个value值我们创建一个映射变量的方式与创建其他所有变量的方式完全相同具体如下所示 mapping(string uint256) public nameToFavoriteNumber具体有关映射的定义以及添加元素的操作如下所示 // SPDX-License-Identifier: MIT pragma solidity ^0.8.8 0.9.0;contract SimpleStorage{//uint允许分配的空间只能以byte的速度增长 uint8 uint16...uint256 最大只能到uint256uint256 public favoriteNumber 123;//设置公开可见struct People{string name;uint256 favoriteNumber;}//定义结构体//定义映射mapping(string uint256) public nameToFavoriteNumber;People[] public people;//定义结构体数组(存储多个结构体的数组)function store(uint256 _favoriteNumber) public {favoriteNumber _favoriteNumber;}//这里被view修饰的函数调用不消耗gas 表示只读函数 不修改或改变区块链已有的状态function getFavoriteNumber() public view returns(uint256){return favoriteNumber;}//定义添加数组元素的函数function addPerson(string memory _name,uint _favoriteNumber) public{//这里由于string底层数bytes数组,因为需要使用memory关键字people.push(People(_name,_favoriteNumber));nameToFavoriteNumber[_name] _favoriteNumber;} }这里需要注意代码里面有关于数组和结构体的定义与实现由于其与Java和C定义方式类似这里读者可以类比理解所以并没有做详细阐述。 6.EVM介绍 前面我们通过solidity编写的所有合约代码它都是在EVM(Ethereum Virtual Machine)上编译的。 EVMEthereum Virtual Machine就是往以太坊区块链上部署智能合约的一个标准并且任何实现某种EVM的区块链你都可以把solidity代码部署上例如AvalancheFantom,Polygon,它们都是与EVM兼容的意思就是我们可以把编写的solidity代码部署到这些区块链上。 回顾整个智能合约 在智能合约中你要做的第一件事就是告诉solidity你正在使用哪个版本的solidity并且你得在首行添加// SPDX-License-Identifier: MIT从而消除警告信息接着你就要使用关键字contract创建你的合约对象并为它命名solidity中的合约contract就类似与其他面向对象语言中的class类并且花括号{}内的所有内容都是该合约的组成部分。 solidity中有许多不同的数据类型例如无符号整形uint布尔值boolean、字符串string、字节bytes32 等等。如果你想创建一种新类型可以创建一个所谓的结构体struct也可以创建数组array或者说列表list也可以创建字典dictionary或者说映射mapping当你给它一个键key时它就会返回该键对应的值value。我们还可以在solidity中创建函数以修改区块链的状态函数使用view和pure修饰便表示是不修改区块链状态的函数我们也可以在函数中指定不同的数据位置calldata和memory的意思就是该数据只是临时数据它们只在函数运行期间存在storage变量则是永久存在的而函数参数由于是临时变量因此不能使用storage变量当我们编写好solidity代码并在Remix点编译compile它就会将代码按照以太坊虚拟机的格式进行编译。 编写好智能合约代码后在Remix可以直接使用快捷键CtrlS编译编译成功后会在侧边栏出现一个绿色的小图标然后点击侧边第四个图标进入部署界面首先选择虚拟账户因为我们是部署到Remix自带的虚拟机中然后设置gas limit限制然后点击部署按钮即可部署成功后便可以看到自动生成了一个合约账户到此你便完成了你的第一份智能合约。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/917800.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

寓意好兆头的公司名字泰州网站整站优化

腾讯云免费服务器申请入口 https://curl.qcloud.com/FJhqoVDP 免费服务器可选轻量应用服务器和云服务器CVM,轻量配置可选2核2G3M、2核8G7M和4核8G12M,CVM云服务器可选2核2G3M和2核4G3M配置,腾讯云服务器网txyfwq.com分享2024年最新腾讯云免费…

十八岁前开始远征

一名高三生的非典型成长实验•启程 你好,同行者,这里是一名高三生进化蓝图的起点,激动之心难以言表,我来了,仿佛是早有预谋的,虽然好像有点晚,一年前也就是十六岁很多新想法涌入我的脑中,当时只觉得与我…

大名网站建设公司建筑工程公司排名

1.pom.xml依赖 2.applicationbean.xml 3.类 小树叶可以跟bean联动起来 不写接口直接写类 实现类 4.测试 两种方法的实现

课后作业二

1.动手动脑 仔细阅读示例: EnumTest.java,运行它,分析运行结果, 你能得到什么结论?你掌握了枚举类型的基本用法了吗? 结论:枚举类型是引用类型, 不属于原始数据类型,它的每个具体值都引用一个特定的对象,相同…

好看的网站页面设计中企动力网站模板

problem luogu-P3242 solution 本题的难点在于如何判定路径之间是否覆盖。 这里我们尝试树常见的 dfs\text{dfs}dfs 序。 考虑 x−yx-yx−y 路径如果要覆盖 u−vu-vu−v 路径需要满足怎样的条件。 以下均假设 dfs(u)<dfs(v),dfs(x)<dfs(y)dfs(u)<dfs(v),dfs(x)&…

永久免费自助建站wordpress自定义评论

【整体思路】 【常用不等式】

网站有pc站和手机站wordpress html代码

C 标准库中的 <algorithm> 头文件包含了一系列非常有用的算法函数&#xff0c;这些函数可以用于处理容器&#xff08;如向量、列表、数组等&#xff09;中的元素。这些算法可以极大地简化编程任务&#xff0c;使代码更加简洁和易于理解。 以下是一些 <algorithm> …

网站页面统计代码wordpress 协会主题

最近两天在研究移动性能这块&#xff0c;这个的用处非常大&#xff0c;比如说在做性能测试的时候用top 或者 dstat 1的时候获取到的性能指标是非常实用的&#xff0c;即时获取的指标评估和分析系统瓶颈。再就是在自动化中调用性能指标&#xff0c;每一步导致的手机性能都即时打…

直播网站开发源码idc网站模板下载

创作不易&#xff0c;本篇文章如果帮助到了你&#xff0c;还请点赞 关注支持一下♡>&#x16966;<)!! 主页专栏有更多知识&#xff0c;如有疑问欢迎大家指正讨论&#xff0c;共同进步&#xff01; &#x1f525;c系列专栏&#xff1a;C/C零基础到精通 &#x1f525; 给大…

设置vscode的默认字符编码

‌在Visual Studio Code中设置默认字符编码的核心方法是修改用户设置文件(settings.json),通过添加或修改files.encoding参数指定全局默认编码(如UTF-8或GBK),或按语言配置特定文件的编码规则。‌ 此设置可解决跨…

adb.exe: more than one device/emulator 杀掉旧的adb进程

adb devicesList of devices attached10AE121S1R001YU deviceadb-10AE121S1R001YU-FOqTvb._adb-tls-connect._tcp. offlineadb shelladb.exe: more than one device/emulator

个人做网站 优帮云页面模板 wordpress

Java中多态的特性&#xff0c;在学习中就是很难懂&#xff0c;比较抽象的概念。学的时候就犯糊涂&#xff0c;但日后会发现&#xff0c;基础在日常工作的理解中占有重要的角色。下面&#xff0c;我将用一个代码实例&#xff0c;回忆和巩固多态的概念和存在的意义。理解多态&…

阜阳网站网站建设分类信息网站 建议 建设

https://blog.csdn.net/lianghe_work/article/details/46503895一、tcp并发服务器概述一个好的服务器,一般都是并发服务器&#xff08;同一时刻可以响应多个客户端的请求&#xff09;。并发服务器设计技术一般有&#xff1a;多进程服务器、多线程服务器、I/O复用服务器等。二、…

浙里建官方网站c 高性能网站开发

话说公元198年7月15日&#xff0c;吴国大都督周瑜帐前&#xff0c;忽闻侍卫传报“报大都督&#xff0c;鲁肃求见”。 鲁肃进入周瑜营中&#xff0c;递上一纸SCRF公文&#xff0c;曰“报大都督&#xff0c;主公欲在我军PO&#xff08;采购单&#xff09;系统中添加一新字段 Ca…

Codeforces Round 1054 (Div. 3)

A. Be Positive 题意:一个数组\(a\),只包含\(-1, 0, 1\)。你每次可以使得一个数加一,求使得数组乘积为正的最少操作次数。 显然只需要操作\(-1\)或者\(0\)。\(0\)必须都加一。那么如果\(-1\)是偶数个,不需要操作,…

淘宝客户自己做网站怎么做wordpress小程序怎么不用认证审核

需求&#xff1a;一个机构下拉菜单&#xff0c;一个人员下拉菜单&#xff0c;默认带入当前登录用户的机构和人员。机构下拉菜单为两个接口&#xff0c;模糊查询为一个接口不包含懒加载&#xff0c;默认非模糊查询情况下为一个接口&#xff0c;点击节点懒加载。机构下拉菜单数据…

江西网站设计团队wordpress 不显示主题

在日常Mysql和Oracle数据库使用时&#xff0c;经常使用到查看表、索引等信息&#xff0c;记录下来&#xff0c;方便备查。 MySQL 主要是使用 information_schema 信息表&#xff1b; Oracle 主要是使用 各种视图&#xff0c;如user_ind_columns。 一、查看所有表 MySQL查看表…

百度网站联盟电商网站建设方案模板下载

namedtuple(具名元组) namedtuple是tuple的升级,目的是解决元组内部的数据进行命名的问题,为了说明namedtuple的优点,我们先看一下tuple的例子,如下代码,声明了课程的元祖,但是元组中两项内容没有说明,如果其他人看到代码不知道意思是什么 course = ("Python教程…

Natural Language Processing

NLP before LLM Context-free Grammar A context-free grammar (CFG) contains a set of production rules, which are rules saying how each nonterminal can be replaced by a string of terminals and non-termina…

东莞做企业宣传网站wordpress调用post的发布时间

1.基本使用 2.参数和返回值 函数里只有一行代码 log没有返回值&#xff0c;所以是undefined 结果为 Hello Demo undefined 箭头函数&#xff1a; 在函数作为另外一个函数参数的时候&#xff0c;适合用箭头函数 3.箭头函数的this 返回值都是window 返回值&#xff0c;一…