智能合约众筹项目实战 首先要给大家说声抱歉,最近太太太忙了。之前老早说的要进行一个智能合约总结,一直都没有时间,今天终于能抽出来点时间,做一个收尾工作。 无论做任何事,我都喜欢善始善终。要做就要做彻底。在这里,我们就跟着建勋老师的步伐,一起来实现我们这个乞丐版的灾情众筹项目吧。 当下正值台风“烟花”的侵袭,郑州的父老乡亲们身处水深泥流之中,我们大家也都是忧心忡忡,想给我们的同胞尽一份心,尽一份力。生活在我们当下这个时空,各种天灾频发,各种人祸也是经常让大家吃瓜吃的津津有味,例如,某某H十字又中饱私囊了多少我们的爱心捐赠。某笔款项又又又又不知去向。 那么,我们有没有好的办法,好的手段来实...

  LtLJvTugyfRY   2023年11月02日   54   0   0 区块链智能合约编程语言

大家好,通学技术,学通技术,让我们一起继续来看看智能合约结构体​​memory​​​和​​storage​​类型转换吧 6、结构体storage转storage详解 hello,大家好,我们紧接着上节内容来看看,结构体关于​​storage​​​和​​memory​​类型的转换。 我们先来看一个例子: pragmasolidity^0.4.16;contractStructTest{structStudent{stringname;stringgrade;}Studentstudent;functiongetStudent(Studentstoragestu)internalre...

  LtLJvTugyfRY   2023年11月02日   31   0   0 赋值区块链智能合约初始化

hello,大家好,欢迎继续坚持学习智能合约。这们这节来看看​​solidity​​结构体. 3、结构体定义与初始化 在solidity的世界中,同样定义了结构体来表示复杂的对象类型,我们一起看看他是怎么来定义和初始化的吧 pragmasolidity^0.4.16;contractStructTest{//定义一个结构体structStudent{stringname;uintgrade;}functioninit()viewreturns(string,uint){//初始化方式一Studentmemorys=Student("tong",100);return(s.name...

Solidity-内存、引用与持久化存储 1、内存与区块链——storage与memory原理 在前面的学习当中,我们知道了,合约中的一个被​​public​​修饰的成员变量,会默认生成一个供外部调用的函数,而这个函数是存储在区块链自身的数据结果里的。对于函数内部的局部变量,仅存在与内存当中。 我们看如下例子: pragmasolidity^0.4.16;contractMemoryTest{functionadd(uintnum)viewreturns(uint){num+=1;returnnum;}functiontest()viewreturns(uint,uint){ui...

  LtLJvTugyfRY   2023年11月02日   65   0   0 数据区块链智能合约java

通学技术,面向区块链编程 在上篇文章中,我们介绍了go语言的基本语法。这节我们重点来看看go之容器数据结构的用法。学过java的小伙伴应该都只要有一节很重要的知识,那就是集合。而go与之对应的就是容器,不过不同于java的集合包括List、Map、Set等,go这边的容器包含数组、切片和map。 下面就让我们展开看看吧 9、容器之数组 packagemainimport"fmt"/容器--可分为数组切片map///数组funcmain(){//整型未初始化赋值0vara1[5]int=[5]int{1,2,3,4}fmt.Println(a1)//赋值a1[4]=6fmt...

  LtLJvTugyfRY   2023年11月02日   65   0   0 占位符数组GO语言赋值区块链

通学技术,面向区块链编程 我们都知道,这个世界都是有一个个对象构成的,作为要描绘现实世界的编程语言来说,怎么来表征一个对象,显得尤为重要。我们都知道java是通过类的方式来表征对象的,那么go是不是也通过类呢? 答案是否定的。在这里,go继承了c语言的思想,通过结构体来描述对象,做到了原始的纯粹,但同时又加入了继承、封装、多态的思想,使得面向对象得以完善。 oop1、自定义结构体 packagemainimport"fmt"/oop--面向对象自定义结构现代编程,都讲究面向对象编程作为一门比较潮的go语言来说面向对象自然也是支持的而面向对象的三要素分别是封装、继承、多态然...

通学技术,面向区块链编程 在第一篇文章中,我们学习了go的基本词法及语法,而这些东西都是静态的,作为一个拥有面向对象思想的我们,有静当然要有动,有属性当然也要有行为,那么什么能保证我们的行为呢?相信聪明的你已经知道了,那就是函数。 6、函数 go语言本着简单简洁的原则,函数的写法也是十分的简单。直接看下面的例子就知道了。 packagemainimport"fmt"//函数举例数字互换funcmain(){a,b:=1,2swap1(a,b)fmt.Println(a,b)swap2(&a,&b)fmt.Println(a,b)swap3(a,b)fmt....

  LtLJvTugyfRY   2023年11月02日   65   0   0 golangGoGO语言sed区块链

hello,大家好,通学智能合约系列文档已经出栏了,关注微信公众号【通学技术】,回复{智能合约}即可获取,大家快来领取吧·· 19、继承中函数的重载重写 在这节内容中,视频中的老师讲的有点问题,此处应当是重写,而不是重载。相信学过java或者其他面向对象的小伙伴们都清楚,重载和重写的区别吧。 我们来看看​​solidity​​的例子一吧 pragmasolidity^0.4.16;contractFather{uintmoney=10000;}contractSonisFather{uintmoney=20000;functiongetMoney()viewreturns(u...

大家好,这里是通学技术,欢迎大家继续跟我一起学习智能合约系列。 13、面向对象–合约的继承 相信能看到这里的人,想必都是有经验的开发人员了,坚持不懈,耐得住寂寞。 ​​solidity​​​作为一种图灵完备的面向对象的编程语言,必然同其他面向对象的语言一样,拥有​​继承​​这一特性。 我们就主要来看看它是怎么来表示继承的吧! pragmasolidity^0.4.16;contractFather{uintmoney=10000;functionnoSmoking()publicreturns(string){return"I'mnotsomking";}}contractSon...

大家好,这里是通学技术,承接上节,我们一起继续来学习智能合约系列。 16、函数小结 前面我们花费了巨多的篇幅来介绍函数,可见函数是多么的重要。不过当然也是,在面向对象的思想里,属性和行为构成了对象,正是因为我们千姿百态的行为,才构建了我们丰富多彩的世界。 这里我们针对我们所学的函数做一个小结吧。 首先,还是先请出我们的函数通用写法。 functionfunctionName(<parametertypes>){private|internal|external|public}[pure|constant|view|payable][returns(<return...

大家好,我是up通,通学技术,学通技术,欢迎大家继续跟我一起学习智能合约系列。 5.external权限修饰符详解 external和internal除public和private属性之外,Solidity还使用了另外两个描述函数可见性的修饰词:internal(内部)和external(外部)。 internal和private类似,不过,如果某个合约继承自其父合约,这个合约即可以访问父合约中定义的“内部”函数。(有点类似于java中的protect)external与public类似,只不过这些函数只能在合约之外调用它们不能被合约内的其他函数调用。 6.值传递与副本拷贝 这...

大家好,我是up通,通学技术,学通技术,欢迎大家继续跟我一起学习智能合约系列。 Solidity–实战篇 在实战篇当中,我们将重点介绍​​solidiy​​​函数的特性。​​solidity​​​学了这么久,我们会发现其实和​​java​​​这种面向对象的语言还是很类似的,​​java​​​类对应​​solidity​​​合约。而合约的属性及函数正对应了我们​​java​​的成员变量及成员方法。编程玩的是逻辑,而逻辑的体现则是行为,行为的数字描述则是函数。 我们将花费巨量的篇幅来说明​​solidty​​的函数,一起加油吧。 ​​solidity​​函数的标准形式我们可以概括如下: ...

写在前面 大家好,真的是我,我又来啦。通学技术,学通技术,欢迎大家继续跟我一起学习智能合约系列。 9.函数modifire的强大功能(上) 在​​solidity​​​的世界里,为我们提供了一种类似于​​spring​​​切面的操作。可以在我们函数的任意位置插入一个函数方法,我们称之为​​函数修改器​​。 下面就让我们来看看他是怎么写的吧 pragmasolidity^0.4.16;contractmodifireTest{addresspublicower;uintpublicnum=0;functionmodifireTest(){ower=msg.sender;}//定义一...

二维数组 在几何的世界里,一维为线,二维为面;而在程序的的世界中,一维为列表,二维为表; 类似于上图,我们就可以看做是一个表结构,我们可以用行和列来确定其中的元素,那么在solidity中怎么表示呢? pragmasolidity^0.4.16;contractTwoArray{uint[2][3]arr=[[1,2],[23,4],[6,7]];functiongetLength()viewreturns(uint){returnarr.length;}} 上面我们演示了二维数组获取长度的方式,也就是我们上图的二维数组中有3个元素。也就是说,二维数组中存放的元素是一维数...

通学技术,学通技术,面向区块链编程,构建可信社会。 写在前面 通学智能合约系列第二卷,从go开始。 距离我上次写智能合约方面的文章,已经过去了3个月了,这期间,我探索了很多赚钱的副业,但是发现所谓的躺赚就是一个悖论。天下没有免费的午餐,自此,醉心于技术,醉心于区块链,醉心于区块链项目落地,将是我毕生的追求与热情所在。接下来,让我们一起遨游区块链的海洋吧。 前几篇文章,将是我对go语言的一个复习,而后我们便投身于如何用go语言来实现钱包、go语言来实现共识算法等,一步步带你深入区块链的内心世界,了解她,爱上她。 初识go 要说这个go也是厉害,是谷歌的大牛们真正利用了他们空余的2...

  LtLJvTugyfRY   2023年11月02日   43   0   0 GO语言区块链智能合约

固定长度字节数组转化 我们之前也学习了那么多的数组了,那么这些数组类型是否可以相互转换呢?答案是肯定的。 我们先来看看固定长度字节数组各bytes之间是怎么转换的吧 pragmasolidity^0.4.16;contractDynamicString{bytes12name=0x7a68656e676a69616e78756e;functionchangeBytes1()viewreturns(bytes1){returnbytes1(name);}functionchangeByte2()viewreturns(bytes2){returnbytes2(name);}func...

字符串 我们都知道字符串在其他编程语言中,都是出场率相当高的一个角色,重要程度不言而喻。在solidity中也不例外。在上节我们学习了动态字节数组,而我们的字符串,可不可以按照动态字节的数组去获取他的长度和其中的元素呢?我们写一个例子来看看吧。 pragmasolidity^0.4.16;contractDynamicString{stringname="tongxuejava";functiongetLength()returns(uint){returnname.length;}functiongetPartName()returns(bytes1){returnname[0...

5.数组 固定长度字节数组 关键字有:bytes1,bytes2mbytes3,…,bytes32(以步长1递增)。byte代表bytes1。 pragmasolidity^0.4.16;contractByteArray{bytes1publicnum1=0x7a;bytes2publicnum2=0x7a68;bytes12publicnum3=0x7a68656e676a69616e78756e;} 固定长度字节数组对于数值来说,有点等同于我们的uint。一个字节等于8位。即bytes1有点等同于uint8,至少在位数上是相等的。 上面的例子,我们同时引入了一个pub...

固定数组 首先我们来看看固定数组的默认值。 pragmasolidity^0.4.16;contractFixArray{uint[5]arr;functiongetDefaultArrContent()viewreturns(uint[5]){returnarr;}} 编译执行后,我们可以看到,固定数组初始值都为0. 函数对固定数组初始值进行修改: pragmasolidity^0.4.16;contractFixArray{uint[5]arr;functioninit(){arr[0]=100;arr[1]=200;}functiongetArrayConte...

Solidity语法 这里我先上一张图,以森见木,方能了然于心。 从上图可以看出,我们主要从两方面来说明Solidity的语法即​​数据类型​​​与​​运算​​,比较复杂的部分就是我们的数组部分。至于这部分,我们暂且按下不表,待我娓娓道来。 1.真假与或非 废话不多说,我们直接上代码: pragmasolidity^0.4.16;contractBoolTest{boola;functiongetBoolDefault()returns(bool){returna;}} 编译执行后,我们可以看到如图: 从上图中可以看到,我们boolean类型默认为false,当然,这应...

  LtLJvTugyfRY   2023年11月02日   53   0   0 ico区块链智能合约编程语言
关注 更多

空空如也 ~ ~

粉丝 更多

空空如也 ~ ~