没想到 Solidity
里也有 public
和 private
两种可见修饰符
如果一个方法需要对外可见,也就是可以通过 合约 ABI 来访问,那么需要添加 public
,如果不对外访问,则需要添加 private
如果你没添加,则会出现以下错误
HelloWorldContract.sol:3:3: SyntaxError: No visibility specified. Did you intend to add "public"?\n function sayHi() view returns (string){\n ^ (Relevant source part starts here and spans across multiple lines).\n
比如我的源码如下
pragma solidity ^0.5.8; contract HelloWorldContract { function sayHi() pure returns (string memory _greeting){ _greeting = 'Hello World'; } }
则需要改成
pragma solidity ^0.5.8; contract HelloWorldContract { function sayHi() public pure returns (string memory _greeting){ _greeting = 'Hello World'; } }
#1 • 3 年, 8 月 前 •
谢谢,解决了我的问题
#2 • 3 年, 8 月 前 •
@kaixinxiaoaimi 有帮助就好啊