我使用以下代码创建了ERC20令牌及其工作正常
https://ropsten.etherscan.io/address/0x299d8c3672b95f5a38af9a8d69590c4546219859#code
问题 我想在传输erc20令牌时添加一个自定义参数,因此我在传输函数中添加了一个参数项目类型,如下所述
https://ropsten.etherscan.io/address/0x869Ac98EC03f220F6C49AaD2AabA4ad53924e74B#code
每当我尝试使用web3从metamask或从应用程序转移一些令牌时。交易失败。有人遇到同样的问题吗?
问候 人体模型C
答案 0 :(得分:2)
ERC20接口不是一段代码。程序员应该就合同的外观达成协议。
程序员群之间的协议通常称为“标准”。这就是为什么ERC20通常被称为令牌标准的原因。
在代码中,该标准被实现为接口,因此编译器可以检查您遵守该标准的天气。
如果更改界面,则更改标准。因此,您编程的内容不再是ERC20令牌。因此,其他软件拒绝接受智能合约作为ERC20令牌也就不足为奇了,因为它不是ERC20令牌。
应注意,接口仅强制实施必须的内容。您要添加的任何功能都没有限制。因此,您可以根据需要自由添加specialTransfer()
函数。