contract Donate{
uint size = 0;
struct DonateInfo{
uint id;
uint value;
uint time;
}
DonateInfo[] public list;
/* function get(unit index) returns (DonateInfo){
DonateInfo result = list[index];
return result;
}*/
function lengthOf() returns (uint len) {
uint result = list.length;
return result;
}
function put(uint id, uint value, uint time) returns (uint len) {
DonateInfo info;
info.id =id;
info.value=value;
info.time=time;
list.push(info);
size++;
return size;
}
function valueOf(uint _index) returns (DonateInfo) {
DonateInfo result = list[_index];
return result;
}
}
上面是我写的智能合约,不知道为什么第一次调用PUT方法后,数组的长度就会是2,求大神拯救
http://blog.csdn.net/u013137970/article/details/53023115
http://baijiahao.baidu.com/s?id=1563765442545887&wfr=spider&for=pc
推荐个以太坊新手入门教程有关于智能合约的学习入门:http://xc.hubwiz.com/course/5a952991adb3847553d205d1?affid=20180507csdn
DonateInfo[] public list;这个语句默认进行了初始化{ id=0,value=0,time=0}