E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
solidity
深入理解
Solidity
——继承
继承
Solidity
通过复制包括多态性的代码来支持多重继承。除非合约是显式给出的,所有的函数调用都是虚拟的,绝大多数派生函数可被调用。
黄嘉成
·
2018-05-21 17:04
Solidity文档翻译系列
以太坊去中心化应用开发
深入理解
Solidity
——事件(Events)
事件(Events)事件是使用EVM日志内置功能的方便工具,在dapp的接口中,它可以反过来调用Javascript的监听事件的回调。事件在合约中可被继承。当被调用时,会使参数存储到交易的日志中——一种区块链上的特殊数据结构。这些日志与合约的地址关联,并合并到区块链中,只要区块可以访问就一直存在。日志和事件在合约内不可直接被访问,即使是创建日志的合约。日志的简单支付验证(SPV)是可能的,如果一个
黄嘉成
·
2018-05-20 23:50
Solidity文档翻译系列
以太坊去中心化应用开发
深入理解
Solidity
——函数重载
pragma
solidity
^0.4.16;contractA{functionf(uint_in)publicpurereturns(uintout){out=1;}functionf(uint_in
黄嘉成
·
2018-05-20 22:48
Solidity文档翻译系列
以太坊去中心化应用开发
深入理解
Solidity
——回退函数
回退函数(FallbackFunction)一个合约可以有一个匿名函数。此函数不能有参数,不能返回任何值。如果没有其他函数与给定的函数标识符匹配,或者如果根本没有提供数据,将执行一个合约的调用。此外,每当合同接收没有数据的纯Ether时,会执行回退函数。此外,为了接收Ether,回退函数必须标记为payable。如果没有这样的函数,合约不能通过常规transactions接收Ether。在这种情况
黄嘉成
·
2018-05-20 00:42
Solidity文档翻译系列
以太坊去中心化应用开发
深入理解
Solidity
——纯函数
pragma
solidity
^0.4.
黄嘉成
·
2018-05-20 00:31
Solidity文档翻译系列
以太坊去中心化应用开发
深入理解
Solidity
——视图函数
pragma
solidity
^0.4.16;contractC{functio
黄嘉成
·
2018-05-20 00:16
Solidity文档翻译系列
以太坊去中心化应用开发
深入理解
Solidity
——常量
常量(ConstantStateVariables)状态变量可以被定义为constant。这样的话,它必须在编译期间通过一个表达式赋值。这种情况下,以下功能的表达式不被允许:访问storage访问区块链数据,如now,this.balance,block.number访问合约执行的中间数据,如msg.gas向外部合约发起调用。可能会造成内存分配副作用表达式是允许的,但对其它内存对象的产生副作用的表
黄嘉成
·
2018-05-20 00:51
Solidity文档翻译系列
以太坊去中心化应用开发
深入理解
Solidity
——函数修饰符
pragma
solidity
^0.4.11;contractowned{functionowned()public{owner=msg.sender;}addressowner;//这个合约仅仅定义了修饰符
黄嘉成
·
2018-05-20 00:18
Solidity文档翻译系列
以太坊去中心化应用开发
深入理解
Solidity
——可见性和Getters
可见性和Getters(VisibilityandGetters)
Solidity
可以理解两种函数调用:“内部调用”,不创建一个真实的EVM调用,也称为“消息调用”“外部调用”,要创建一个真实的EVM调用
黄嘉成
·
2018-05-19 21:27
Solidity文档翻译系列
以太坊去中心化应用开发
深入理解
Solidity
——Assert, Require, Revert 和 Exceptions
Assert,Require,Revert和Exceptions
Solidity
使用state-reverting异常来处理错误。
黄嘉成
·
2018-05-19 20:51
Solidity文档翻译系列
以太坊去中心化应用开发
深入理解
Solidity
——作用域和声明
作用域和声明(ScopingandDeclarations)已声明的变量将具有其字节表示为全0的初始值。变量的初始值是任何类型的典型“零状态”(“zero-state)。例如,bool的初始值为false。uint或int类型的默认值为0。对于静态大小的数组和bytes1到bytes32,每个单独的元素将被初始化为对应于其类型的初始值。对于动态大小的数组、bytes和string,初始值是空数组或
黄嘉成
·
2018-05-19 20:11
Solidity文档翻译系列
以太坊去中心化应用开发
深入理解
Solidity
——函数调用和赋值
函数调用(FunctionCalls)内部函数调用(InternalFunctionCalls)当前合约的函数可以直接内部(Internal)调用,也可以递归地调用,比如这个古怪的例子:pragma
solidity
黄嘉成
·
2018-05-19 20:45
Solidity文档翻译系列
以太坊去中心化应用开发
跟着示例学习
Solidity
——安全的远程购买
安全的远程购买pragma
solidity
^0.4.21;contractPurchase{uintpublicvalue;addresspublicseller;addresspublicbuyer;
黄嘉成
·
2018-05-19 20:32
Solidity文档翻译系列
以太坊去中心化应用开发
跟着示例学习
Solidity
——秘密竞价(盲拍)
在本节中,我们将展示如何轻松地在以太坊上创建一个秘密竞价的合约。我们将从公开拍卖开始,每个人都可以看到出价,然后将此合约扩展到盲拍合约,在竞标期结束之前无法看到实际出价。秘密竞价(盲拍)之前的公开拍卖接下来将被扩展为一个秘密竞拍。秘密竞拍的好处是在投标结束前不会有时间压力。在一个透明的计算平台上进行秘密竞拍听起来像是自相矛盾,但密码学可以实现它。在投标期间,投标人实际上并没有发送她的出价,而只是发
黄嘉成
·
2018-05-19 20:33
Solidity文档翻译系列
以太坊去中心化应用开发
Solidity
区块链
智能合约
秘密竞价
盲拍
跟着示例学习
Solidity
——简单的公开拍卖
pragma
solidity
^0.4.21;contractSimpleAuction{//拍卖的参数。a
黄嘉成
·
2018-05-19 20:53
Solidity文档翻译系列
以太坊去中心化应用开发
智能合约概述——子货币
pragma
solidity
^0.4.21;contractCoin{//关键字“public”让这些变量可以从外部读取addresspublicm
黄嘉成
·
2018-05-19 19:53
Solidity文档翻译系列
以太坊去中心化应用开发
深入理解
Solidity
——创建合约
Solidity
的合约类似于面向对象语言中的类。它们包含存放持久化数据的状态变量和可修改这些变量的函数。调用不同的合约实例上的函数将执行EVM函数调用,从而切换上下文,使得状态变量不可访问。
黄嘉成
·
2018-05-19 18:16
Solidity文档翻译系列
以太坊去中心化应用开发
Solidity
智能合约
回退函数
纯函数
视图函数
深入理解
Solidity
——输入输出参数
输入参数和输出参数(InputParametersandOutputParameters)与JavaScript一样,函数可以将多个参数作为输入,但与Javascript和C不同的是,
Solidity
的函数可以返回任意数量的参数作为输出
黄嘉成
·
2018-05-19 15:24
Solidity文档翻译系列
以太坊去中心化应用开发
深入理解
Solidity
——单位和全局变量
货币单位(EtherUnits)wei,finney,szabo或ether可以在
Solidity
中作为货币单位并可以进行相互转换。没有单位的数字默认是Wei。
黄嘉成
·
2018-05-18 15:51
Solidity文档翻译系列
以太坊去中心化应用开发
Solidity
学习教程
#前言截止2018年5月18日撰写此文时,
Solidity
最新版本为0.4.24,官方中文文档还没有翻译完毕。
黄嘉成
·
2018-05-18 11:18
Solidity文档翻译系列
以太坊去中心化应用开发
深入理解
Solidity
——隐式转换和显式转换
隐式转换(ImplicitConversions)如果将一个运算符应用于多个不同类型,编译器会试图隐式地把其中一个操作数的类型转换为另一个操作数的类型。赋值操作在同样的情况下也会这样。一般来说,如果转换后不会造成信息会丢失,会自动进行隐式转换:unt8可转换成uint16,int128,int256int8不能转换成uint256,因为uint256放不下负数无符号整数可以转换成相同或更大的尺寸的
黄嘉成
·
2018-05-18 10:21
Solidity文档翻译系列
以太坊去中心化应用开发
深入理解
Solidity
——左值运算符
左值运算符(OperatorsInvolvingLValues)如果a是一个左值(LValues),即一个可以赋值给它的变量,可以使用以下的运算符:a+=e相当于a=a+e。运算符-=,*=,/=,%=,|=,&=和^=都有类似的定义。a++和a--相当于a+=1/a-=1,--a和++a对a有与上一条相同的效果,但是等值发生改变后才返回运算结果。删除(delete)deletea将对应类型的初始
黄嘉成
·
2018-05-18 09:06
Solidity文档翻译系列
以太坊去中心化应用开发
深入理解
Solidity
——映射
映射(Mappings)映射类型定义方式为mapping(_KeyType=>_KeyValue)。键类型允许除映射、变长数组、合约、枚举、结构体外的几乎所有类型()。值类型没有任何限制,可以为任何类型包括映射类型。映射可以被视作为一个Hashtable,所有可能的键会被虚拟化的创建,映射到一个类型的默认值(二进制的全零表示)。在映射表中,并不存储键的数据,仅仅存储它的keccak256哈希值,这
黄嘉成
·
2018-05-17 23:21
Solidity文档翻译系列
以太坊去中心化应用开发
深入理解
Solidity
——引用类型
引用类型(ReferenceTypes)引用类型比上述的值类型需要更加小心地处理。因为复制拷贝他们可能开销相当大,我们必须考虑把它们存储在内存(这不是持久化)或者存储器(状态变量存放的地方)。数据存储位置(Datalocation)每一个复杂类型,即数组Array和结构体Struct,有一个额外的注解——“数据存储位置”,关系到它是放在在内存还是存储器中。根据上下文会产生一个默认存储位置,但是可以
黄嘉成
·
2018-05-17 23:26
Solidity文档翻译系列
以太坊去中心化应用开发
做区块链开发工程师必须要掌握的专业技能
专业技能:一、编程语言方面C/C++(必须熟悉C++语言),Golang(必须熟悉GO语言)、Python、Java、
Solidity
,能独立开发Chaincode熟练掌握golang的goroutine
weixin_30631587
·
2018-05-17 20:00
区块链
数据库
后端
深入理解
Solidity
——值类型
Solidity
是一种静态类型语言,这意味着每个变量(状态变量和局部变量)需要在编译时指定类型,或至少可以推倒出类型,请参阅下面的TypeDeduction。
黄嘉成
·
2018-05-17 18:10
Solidity文档翻译系列
以太坊去中心化应用开发
深入理解
Solidity
——合约结构
合约结构在
Solidity
中,合约类似于面向对象编程语言中的类。每个合约中可以包含状态变量、函数、函数修饰器、事件、结构类型、和枚举类型的声明,且合约可以从其他合约继承。
黄嘉成
·
2018-05-17 15:26
Solidity文档翻译系列
以太坊去中心化应用开发
深入理解
Solidity
——
Solidity
源文件结构
Solidity
源文件结构源文件中可以包含任意多个合约定义、导入指令和杂注指令。版本杂注为了避免未来被可能引入不兼容变更的编译器所编译,源文件可以(也应该)被所谓的版本杂注pragma所注解。
黄嘉成
·
2018-05-17 14:05
Solidity文档翻译系列
以太坊去中心化应用开发
跟着示例学习
Solidity
——投票
投票以下的合约相当复杂,但展示了很多
Solidity
的功能。它实现了一个投票合约。当然,电子投票的主要问题是如何将投票权分配给正确的人员以及如何防止被操纵。
黄嘉成
·
2018-05-17 09:28
Solidity文档翻译系列
以太坊去中心化应用开发
安装
Solidity
编译器——从源代码编译
从源代码编译克隆代码库执行以下命令,克隆源代码:gitclone--recursivehttps://github.com/ethereum/
solidity
.gitcd
solidity
如果你想参与
Solidity
黄嘉成
·
2018-05-17 09:09
Solidity文档翻译系列
以太坊去中心化应用开发
Solidity安装
源代码编译
智能合约
区块链
命令行构建
安装
Solidity
编译器
安装
Solidity
编译器版本
Solidity
的版本遵循语义化版本原则,作为发布版本的补充,每日开发构建(nightlydevelopmentbuilds)也是可用的。
黄嘉成
·
2018-05-17 08:20
Solidity文档翻译系列
以太坊去中心化应用开发
智能合约概述——存储
存储pragma
solidity
^0.4.0;contractSimpleStorage{uintstoredData;functionset(uintx)public{storedData=x;}functionget
黄嘉成
·
2018-05-16 23:53
Solidity文档翻译系列
以太坊去中心化应用开发
Solidity
中 revert(), assert() 和 require() 的使用方法
solidity
0.4.10版本发布了新的assert(),require()和revert()函数,解决了以前代码中有困惑的地方。
csdn_AF
·
2018-05-16 22:12
区块链开发
Solidity
中 revert(), assert() 和 require() 的使用方法
solidity
0.4.10版本发布了新的assert(),require()和revert()函数,解决了以前代码中有困惑的地方。
csdn_AF
·
2018-05-16 22:12
区块链开发
第三篇:以太坊
solidity
编程基础(属性和方法的访问权限+值传递)
token=216f3920c66e1d2d一:开发工具选择auto下载地址:点击下载二:
solidity
中属性和方法访问权限(public、internal、private)public>internal
静思浅行
·
2018-05-16 07:39
区块链
智能合约语言
Solidity
教程系列5 - 数组介绍
本文首发于深入浅出区块链社区原文链接:智能合约语言
Solidity
教程系列5-数组介绍原文已更新,请读者前往原文阅读
Solidity
教程系列第5篇-
Solidity
数组介绍。
Tiny熊
·
2018-05-16 00:00
智能合约
区块链
智能合约语言
Solidity
教程系列6 - 结构体与映射
本文首发于深入浅出区块链社区原文链接:智能合约语言
Solidity
教程系列6-结构体与映射原文已更新,请读者前往原文阅读
Solidity
教程系列第6篇-
Solidity
结构体与映射。
Tiny熊
·
2018-05-16 00:00
智能合约
区块链
智能合约语言
Solidity
教程系列9 - 错误处理
本文首发于深入浅出区块链社区原文链接:智能合约语言
Solidity
教程系列9-错误处理原文已更新,请读者前往原文阅读这是
Solidity
教程系列文章第9篇介绍
Solidity
错误处理。
Tiny熊
·
2018-05-16 00:00
智能合约
区块链
智能合约语言
Solidity
教程系列3 - 函数类型
本文首发于深入浅出区块链社区原文链接:智能合约语言
Solidity
教程系列3-函数类型原文已更新,请读者前往原文阅读
Solidity
教程系列第三篇-
Solidity
函数类型介绍。
Tiny熊
·
2018-05-16 00:00
区块链
智能合约
智能合约语言
Solidity
教程系列10 - 完全理解函数修改器
本文首发于深入浅出区块链社区原文链接:智能合约语言
Solidity
教程系列10-完全理解函数修改器原文已更新,请读者前往原文阅读这是
Solidity
教程系列文章第10篇,带大家完全理解
Solidity
的函数修改器
Tiny熊
·
2018-05-16 00:00
智能合约
区块链
智能合约语言
Solidity
教程系列2 - 地址类型介绍
本文首发于深入浅出区块链社区原文链接:智能合约语言
Solidity
教程系列2-地址类型介绍原文已更新,请读者前往原文阅读
Solidity
教程系列第二篇-
Solidity
地址类型介绍.
Solidity
系列完整的文章列表请查看分类
Tiny熊
·
2018-05-16 00:00
智能合约
区块链
智能合约语言
Solidity
教程系列1 - 类型介绍
本文首发于深入浅出区块链社区原文链接:智能合约语言
Solidity
教程系列2-地址类型介绍原文已更新,请读者前往原文阅读现在的
Solidity
中文文档,要么翻译的太烂,要么太旧,决定重新翻译下。
Tiny熊
·
2018-05-16 00:00
智能合约
区块链
智能合约语言
Solidity
教程系列7 - 以太单位及时间单位
本文首发于深入浅出区块链社区原文链接:智能合约语言
Solidity
教程系列7-以太单位及时间单位原文已更新,请读者前往原文阅读这是
Solidity
教程系列文章第7篇介绍以太单位及时间单位,系列带你全面深入理解
Tiny熊
·
2018-05-16 00:00
区块链
智能合约
如何编写一个可升级的智能合约
写在前面阅读本文前,你应该对以太坊、智能合约及
Solidity
语言有所了解,如果你还不了解,建议你先看以太坊是什么当智能合约出现bug一方面正式由于智能合
Tiny熊
·
2018-05-16 00:00
区块链
智能合约
web3js调用已部署智能合约的function
开发环境macos操作系统nodejs8.9.4npm5.6.0调用智能合约首先需要使用
Solidity
编写智能
从一打到替补席
·
2018-05-15 19:10
智能合约vote部署
智能合约vote部署1前言
solidity
官方文档上有一个vote智能合约。我使用truffle框架进行编写和部署。
haolifengwang
·
2018-05-15 12:09
区块链
智能合约最佳实践之
Solidity
编码规范
本文首发于深入浅出区块链社区原文链接:智能合约最佳实践之
Solidity
编码规范原文已更新,请读者前往原文阅读每一门语言都有其相应的编码规范,
Solidity
也一样,下面官方推荐的规范及我的总结,供大家参考
Tiny熊
·
2018-05-15 00:00
solidity
智能合约
区块链
智能合约开发环境搭建及Hello World合约
开发环境搭建
Solidity
安装
Tiny熊
·
2018-05-15 00:00
智能合约
区块链
干货:手把手教你发行属于自己的区块链Token
TokenToken的名称:DylanTokenToken的标识:DT发行量:19940512Token的小数位:18编写合约想要基于以太坊拥有自己的Token,需要通过智能合约的形式去发行,编写如下基于ERC20的
solidity
黄嘉成
·
2018-05-14 21:09
区块链
以太坊智能合约字节码深入解析
智能合约的例子如下:pragma
solidity
^0.4.19;contractC{uint256a;functionC()pu
shi_qinfeng
·
2018-05-12 17:20
上一页
58
59
60
61
62
63
64
65
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他