【问题标题】:Im getting this error message from this particular piece of code我从这段特定的代码中收到此错误消息
【发布时间】:2021-04-23 13:49:58
【问题描述】:
interface IERC20 {
  function totalSupply() external view returns (uint256);
  function balanceOf(address who) external view returns (uint256);
  function allowance(address owner, address spender) external view returns (uint256);
  function transfer(address to, uint256 value) external returns (bool);
  function approve(address spender, uint256 value) external returns (bool);
  function transferFrom(address from, address to, uint256 value) external returns (bool);
}

伴随着这个错误,我收到了这个错误消息

这个合约可能是抽象的,没有完全实现抽象父类的方法或者没有正确调用继承的合约的构造函数。

我能做些什么来解决这个问题?

【问题讨论】:

    标签: solidity


    【解决方案1】:

    您正在尝试部署一个接口,这是不可能的,因为它不包含任何代码 - 只是函数的定义。


    如果你已经有实现该接口的合约,需要在“部署”选项卡中选择,见截图:


    如果您还没有实施合同,那么您还处于起步阶段,需要实施整个事情才能拥有一个有效的 ERC-20 代币合同。

    没有创建 ERC-20 代币的“最佳方式”,因为每个合约的实施方式不同,但仍实施 ERC-20 标准。对于初学者,我建议阅读 OpenZeppelin docs 和他们的 source codes 以了解他们如何实施标准。或者,如果您搜索“minimal erc-20 contract”,您会发现更多可能更容易掌握的实现。

    pragma solidity ^0.8;
    
    interface IERC20 {
      function totalSupply() external view returns (uint256);
      function balanceOf(address who) external view returns (uint256);
      function allowance(address owner, address spender) external view returns (uint256);
      function transfer(address to, uint256 value) external returns (bool);
      function approve(address spender, uint256 value) external returns (bool);
      function transferFrom(address from, address to, uint256 value) external returns (bool);
    }
    
    contract MyContract is IERC20 {
        function totalSupply() external view returns (uint256) {
            // TODO implement this function
        }
        
        function balanceOf(address who) external view returns (uint256) {
            // TODO implement this function
        }
        
        // TODO implement all functions of the interface
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-07
      • 1970-01-01
      • 2013-08-22
      • 2020-02-25
      相关资源
      最近更新 更多