如果在solidity智能合约0.5.0以上版本,如下使用constant定义方法:

function balanceOf(address who)  constant returns (uint);

编译过程中会出现如下异常,这是因为constant在0.5.0以后版本constant被移除,进而使用view或pure来代替。

ParserError: The state mutability modifier "constant" was removed in version 0.5.0. Use "view" or "pure" instead.
function balanceOf(address who) constant returns (uint);

同时,针对上面的function定义,如果使用了view,还需要指定为public的,如下:

function balanceOf(address who) public view returns (uint);

否则会报类似下面的异常提示:

SyntaxError: No visibility specified. Did you intend to add "public"?
 

发表评论

电子邮件地址不会被公开。 必填项已用*标注