建议和反馈

请填写你的反馈内容

感谢您对链客的信任!

恭喜您填写完个人简历!链客专注于区块链职位连接,帮助您的投递更加精准高效,赶快去选择自己心仪的岗位吧!

推动中国区块链事业发展始终是我们坚定不移的梦——链客团队

问答 > 以太坊开发 > 问答详情

关于智能合约中数组的问题

  • 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,求大神拯救

老虎or猫咪

2019-04-15

455

0

撰写答案

请先登陆或注册

1个回答

Lyon.Nee

2019-04-16

  1. 我看了你的代码没问题

  2. 我用你的代码测试运行了还是没问题

  3. 你可能是重复提交了交易吧,才可能让list长度为2

0
赞赏(0)
邀请

感谢您的善举,每一次解答会成为新人的灯塔,回答被采纳后获得20算力和相应的LK币奖励