![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
智能合约开发
Hello World程序员
这个作者很懒,什么都没留下…
展开
-
solidity合约常见操作错误
browser/fgfx.sol:95:17: TypeError: "send" and "transfer" are only available for objects of type "address payable", not "address".require(payee.send(payment));^--------^addresspayableaddr3=address(uint160(c.beneficiary));原创 2020-05-21 23:00:55 · 925 阅读 · 0 评论 -
web3js调用获取当前账户
web3js调用获取当前账户 VotingContract.deployed().then(function(instance){ instance.giveRightToVote(address,{gas: 140000, from: web3.eth.accounts[0]}).then(function(result){ $("#msg2").html(...原创 2020-03-23 17:52:13 · 2877 阅读 · 1 评论 -
solidity实现spv资料
1.树根哈希以太坊节点中是key-value格式的数据存储格式 Node=(Key,Value)value就是节点的RLP编码,key则是RLP编码的哈希值。2.ABI编码ABI 全称是 Application Binary Interface,翻译过来就是:应用程序二进制接口,简单来说就是 以太坊的调用合约时的接口说明。以太坊的外部应用程序向以太坊网络提交交易。 合约功能实际上是将...原创 2019-12-10 11:35:46 · 460 阅读 · 0 评论 -
向上下取整。四舍五入solidity
向下取整:a/b向上取整:(a+b-1)/b四舍五入:int(float(a)/b+0.5)原创 2019-09-06 10:34:45 · 1554 阅读 · 0 评论 -
判断一个地址是否为合约地址或是外部账户地址
判断一个地址是否为合约地址或是外部账户地址extcodesize获取地址关联代码长度。 合约地址长度大于0, 外部账户地址为0//pragma solidity ^0.4.18;//extcodesize获取地址关联代码长度 合约地址大于0 外部账户地址为0 contract IsCadd { function isContract(address addr) returns...原创 2019-09-02 16:09:11 · 3154 阅读 · 0 评论 -
实现可升级智能合约
智能合约升级的基本思路以及具体简单demo实现1.智能合约可升级性智能合约一旦部署无法进行修改,常见方案1.1 主从合约Master-Slave contracts部署一个主合约,以及其他合约,其中主合约负责存储所有其他合约的地址,并在需要时返回所需的地址。优点:简单缺点:不易进行合约资产转移到新合约1.2永久存储合约Eternal Storage contracts逻辑合约...原创 2019-09-02 16:06:51 · 22142 阅读 · 0 评论 -
solidity队列和数组实现
solidity实现队列和数组。结构体存储 uint[] bytes[] 类型 ,输入参数为string类型。实现传入string字符串到队列,只将队列中不存在的插入队尾,并且当队列满时丢弃队首。实现数组增删查改。tips:输入测试例string类型时 如 “sb12” 记得加引号1.1 队列的实现 结构体内存储为bytes[] 输入为string //pragma sol...原创 2019-08-29 20:37:41 · 1056 阅读 · 0 评论 -
solidity的投票示例以及其在remix上部署测试
solidity的投票示例以及其在remix上部署测试1.solidity投票实现pragma solidity >=0.4.22 <0.7.0;/// @title 委托投票contract Ballot { // 这里声明了一个新的复合类型用于稍后的变量 // 它用来表示一个选民 struct Voter { uint weigh...原创 2019-08-29 19:38:10 · 2218 阅读 · 1 评论 -
以太坊智能合约solidity队列数组
字符串string bytes 队列输入输出string类型输入测试例如 "sb12" 记得加引号//pragma solidity ^0.4.15;contract queue{ struct Queue { bytes[] data; uint front; uint rear; } ...原创 2019-08-21 17:00:03 · 774 阅读 · 0 评论 -
Solidity语言开发基础教程
Solidity语言是开发以太坊智能合约的不二选择,本文列举了在solidity学习和开发 中可能对你有帮助的18个资源,包括示例代码、solidity库和预置dapp开发环境的docker镜像。DigixDAODigixDAO提供用于DAO相关数据结构(例如:token)的solidity智能合约库。网址:https://github.com/DigixGlobal/digixdao...转载 2019-08-20 10:16:33 · 2907 阅读 · 1 评论