solidity投票合约在bcos上的部署及解析(二)

上一篇博客的地址为[solidity投票合约在bcos上的部署及解析(一)(http://blog.csdn.net/wzc2608/article/details/78455214)

这篇主要总结一下在投票合约中用到的数据类型:
合约:contract name {}
name指的是智能合约的名字,一个智能合约包含在一个合约类型contract中。
结构体:struct {} 定义一个结构体,它相当于把一组数据打包起来,可以是同类型数据,也可以是不同类型数据。
uint :256位无符号整数
bool :布尔型,只有真/假俩种取值,0为假,非0为真
address:地址,一般用作保存账户地址,不同账户之间的交易实际上就是地址之间的交易。
bytes32:32个字节的固定大小的数组,一旦初始化后,大小内容均不可修改。
public:代表最大权限,可供外部访问,相应的有internal和private。
mapping(A => B)C:映射,可以理解,A为一个键,B为这个键的值,C为这个映射的名字,例如:mapping(address => Voter) public voters;,可以理解为,对于每一个Voter都有一个address的地址与其对应,这样的一个组合的名称叫做voters,如果我们想要得到一个Voter,那么只要知道与其对应的地址即可,如voters[0x123456]就是地址0x123456上的Voter。(以太坊和BCOS地址需要20个字节,这里仅是示例)
function A(B C):函数,A是函数名,B是传入参数的数据类型,C是传入的参数名
msg.sender:这个是现在正在调用智能合约的那个账户的地址
以上就是该合约中所用到的那些数据类型。
更多的数据类型已及上述的数据类型的更详细的解释可以去参考solidity的官方说明文档solidity官方文档中文版
solidity官方文档(英文)

你可能感兴趣的:(BCOS学习)