我从这段特定的代码中得到了这个错误消息 [英] Im getting this error message from this particular piece of code

查看:10
本文介绍了我从这段特定的代码中得到了这个错误消息的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

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);
}

除了此错误,我还收到此错误消息

此协定可能是抽象的,没有完全实现抽象父级的方法,或者没有正确调用继承的协定的构造函数。

我可以做些什么来解决此问题?

推荐答案

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


如果您已经有实现此接口的约定,则需要在";Deploy";选项卡中选择它,请参见屏幕截图:


如果您尚未实施合同,则您还处于开始阶段,需要实施整个项目才能拥有有效的ERC-20令牌合同。

没有创建ERC-20令牌的最佳方法,因为每个合同可以不同地实现,但仍然实现ERC-20标准。对于初学者,我建议阅读OpenZeppelindocs和他们的source codes,看看他们是如何实现标准的。或者,如果您在谷歌上搜索minimal erc-20 contract&q;,您会发现更多更容易掌握的实现。

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
}

这篇关于我从这段特定的代码中得到了这个错误消息的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆