Ali*_*san 3 blockchain solidity remix
当我编写代码时,我在代码的第 10 行收到警告。谁能告诉我这个警告是什么意思?
我的代码
// SPDX-License-Identifier: UNLICENSED
pragma solidity >=0.5.0 < 0.9.0;
contract PracticeTest // It's a class
{
string name ;
uint256 age;
constructor() public
{
name = "Ali";
age = 21 ;
}
}
Run Code Online (Sandbox Code Playgroud)
这是警告
Warning: Visibility for constructor is ignored. If you want the contract to be non-deployable, making it "abstract" is sufficient.
--> contracts/PracticeTest.sol:10:5:
|
10 | constructor() public
| ^ (Relevant source part starts here and spans across multiple lines).
Run Code Online (Sandbox Code Playgroud)
构造函数不再需要可见性 (
public
/ ):为了防止创建合约,可以将其标记为。这使得构造函数的可见性概念变得过时。internal
abstract
资料来源:https ://docs.soliditylang.org/en/v0.8.13/070-writing-changes.html#functions-and-events
因此,如果您使用 Solidity 0.7 或更高版本编译合约,则构造函数可见性(在您的情况下public
)将被忽略,您可以安全地将其删除。
constructor()
{
name = "Ali";
age = 21 ;
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
2948 次 |
最近记录: |