solidity入门学习
文章平均质量分 61
volcano_Blockchain
gokemicro
展开
-
solidity进阶第五课——Create2
initialize函数会在Pair合约创建的时候被工厂合约调用一次,将token()和token1更新为币对中两种代币的地址。在这两种情况下,新合约的地址都以相同的方式计算:创建者的地址(通常为部署的钱包地址或者合约地址)和。Create2操作码使我们在智能合约部署在以太坊网络之前就能预测合约的地址。(该地址发送交易的总数,对于合约账户是创建的合约总数,每创建一个合约nonce+1))的哈希。通过它,我们可以验证我们事先计算的地址和实际地址是否相同。是币对地址的数组,存储了所有币对地址。原创 2022-10-16 20:10:13 · 2563 阅读 · 0 评论 -
solidity进阶第四课——在合约中创建新合约
在以太坊上,用户(外部用户)可以创建智能合约,智能合约同样也可以创建新的智能合约。去中心化交易所uniswap就是利用工厂合约(Factory)创建了无数个币对合约(Pair)。有两种方法可以在合约中创建合约,create和create2,这里我们讲create,下一讲会介绍create2。其中Contract是要创建的合约名,x是合约对象即地址,如果构造函数是payable,可以创建时转入_value数量的ETH,params是新合约构造函数的参数。工厂合约用于创建新的币对,并管理币对地址。原创 2022-10-10 22:06:51 · 2625 阅读 · 0 评论 -
solidity进阶第三课——Call
1.Response事件:利用call合约调用目标合约函数。call是address类型的低级成员函数,它用来与其他合约交互。它的返回值为(boll,data),分别对应call是否成功以及目标函数的返回值。这是我们可以通过call调用对方合约的函数。setX():external payable函数,可以设置x的值,并向合约发送ETH。函数签名为“函数名(逗号分隔的参数类型)”。在调用合约时可以指定交易发送的。函数,它将返回目标合约。,但其实调用的目标合约。函数来调用目标合约的。4.调用不纯在的函数。原创 2022-09-29 22:47:20 · 1550 阅读 · 2 评论 -
solidity进阶第二课——import和调用其他合约
1.通过源文件相对位置导入,在solidity中,当你有多个文件并且想把一个文件导入文件时可以用import。我们可以在函数里传入目标合约地址,生成目标合约的引用,然后调用目标函数。我们可以创建合约变量,然后通过它来调用目标函数。)在代码中的位置为:在声明版本号之后,在其余代码之前。我们可以直接在函数里传入合约的引用,只需要把上面参数的。的,在下面这个例子中我们通过调用。函数为例,我们在新合约中写一个。下面例子实现了调用目标合约的。函数的参数中,调用后成功获取。函数的参数中,调用后成功获取。原创 2022-09-27 12:32:03 · 2059 阅读 · 0 评论 -
solidity第十一课——函数重载以及库函数调用
solidity第十一课——函数重载及库函数的调用法原创 2022-09-25 12:00:00 · 762 阅读 · 0 评论 -
solidity第十课——接口
solidity第十课——接口原创 2022-09-24 16:36:35 · 2942 阅读 · 0 评论 -
solidity第九课——事件与继承
solidity系列的重点与难点原创 2022-09-22 21:01:38 · 1096 阅读 · 0 评论 -
solidity第八课——语句,构造函数和函数修饰符
solidity的特殊与通用之处,以及开发Dapps时重要的ownable合约。原创 2022-09-21 09:30:00 · 689 阅读 · 0 评论 -
solidity第七课——变量初始值和常数
solidity第七课——变量初始值和常数原创 2022-09-20 15:42:52 · 910 阅读 · 0 评论 -
solidity第六课——引用类型和映射类型
可变长度数组:在声明时不指定数组的长度。用x[]的格式声明,其中x是元素的类型,例如(bytes比较特殊,是数组,但是不用加。1.length: 数组有一个包含元素数量的length成员,memory数组的长度在创建后是固定的。固定长度数组:在声明时指定数组的长度。2.push(x):动态数组和bytes拥有push()成员可以在数组最后添加一个x元素。3.pop():动态数组和bytes拥有pop()成员可以在数组最后移除最后一个元素。,因此可以用于合约的状态变量,函数中的。等,不能用自定义的结构体。原创 2022-09-19 08:38:52 · 709 阅读 · 0 评论 -
solidity第五课——变量数据存储和作用域
storage类型的数据存在链上,类似计算机的硬盘,消耗gas多;由于这类变量比较复杂,占用存储空间大,我们在使用时必须要声明数据存储的位置。局部变量是仅在函数执行过程中有效的变量,函数退出后,变量无效。局部变量的数据存储在内存里,不上链,gas低。状态变量是数据存储在链上的变量,所有合约内函数都可以访问 ,gas消耗高。全局变量是全局范围工作的变量,都是solidity预留关键字。1.storage:赋值给函数中的storage时候,会创建引用,改变新变量会影响原变量。类似,存储在内存中,不上链。原创 2022-09-18 18:02:04 · 1007 阅读 · 0 评论 -
solidity——第四课函数输出
solidity——第四课函数输出原创 2022-09-16 19:46:32 · 1090 阅读 · 0 评论 -
solidity第三课——函数类型
solidity第三课——函数类型原创 2022-09-15 12:00:00 · 691 阅读 · 0 评论 -
solidity第二课——数值类型
solidity的第二课——数值类型原创 2022-09-14 22:15:00 · 566 阅读 · 0 评论 -
solidity第一课—了解Remix和Hellosolidity三行代码
solidity第一课—了解Remix和Hellosolidity三行代码原创 2022-09-13 15:59:29 · 1383 阅读 · 0 评论