代码之家  ›  专栏  ›  技术社区  ›  Ritvick

pragma solidity-jpmorganchase cakeshop中的编译错误

  •  0
  • Ritvick  · 技术社区  · 7 年前

    pragma solidity ^0.4.24;
    pragma experimental ABIEncoderV2;
    contract SimpleStorage {
    
        uint public storedData; 
    
        event Change(string message, uint newVal);
    
        function SimpleStorage(uint initVal) {
            Change("initialized", initVal);
            storedData = initVal;
        }
    
        function set(uint x) {
            Change("set", x);
            storedData = x;
        }
    
        function get() constant returns (uint retVal) {
            return storedData;
        }
    
    }
    

    它应该在cakeshopwebui上编译,就像在本地机器上编译一样

    1 回复  |  直到 7 年前
        1
  •  1
  •   Ben    7 年前

    使用混音,您的合同似乎存在以下潜在问题:

    1. 您正在使用构造函数的合同名称。你应该使用 constructor
    2. 所有函数都缺少可见性修饰符。考虑添加 public 每个函数的修饰符,包括构造函数。
    3. 事件应该使用 emit emit Change("set", x);