我有一个ERC-721智能合同,定义如下:
contract MintNFT is ERC721Enumerable, Ownable {
constructor(string _name, string _symbol) ERC721(_name, _symbol){}
}其中我创建了NFT和其他几个函数。然后,我创建了一个新的合同来购买NFT并管理一些东西,但是它迫使我将它标记为抽象的,不管我在合同中写了什么。我是这样定义的:
contract ManagerNFT is MintNFT, IERC721 {
constructor(string memory _name, string memory _symbol) MintNFT(_name, _symbol){}
}当我将这个linearization of inheritance graph impossible契约标记为抽象时,它会抛出一个错误,说它会消失。我不知道为什么会发生这种情况,我认为构造函数的设置是正确的,对如何做到这一点有什么想法吗?谢谢。
发布于 2022-01-29 16:08:27
正如IERC721名称所示,它是一个接口。
因此,ManagerNFT需要实现接口的所有功能。
https://stackoverflow.com/questions/70907084
复制相似问题