乐趣区

solidity智能合约implicit-conversion异常

问题场景

在使用 ^0.5.10 版本的 solidity 时,如果使用 this 关键字会出现以下问题。

代码:

require(tokenContract.balanceOf(this) >= _numberOfTokens);(issue is here)

错误信息:

TypeError: Invalid type for argument in function call. Invalid 
  implicit conversion from contract DappTokenSale to address requested.
    require(tokenContract.balanceOf(this) >= _numberOfTokens);

即提示:

implicit conversion from contract DappTokenSale to address

解决方案

使用 address(this) 替代 this。

require(tokenContract.balanceOf(address(this)) >= _numberOfTokens);(issue is here)

原文链接:https://www.choupangxia.com/2…

退出移动版