Blockchain Solidity ParserError:应为'';但是得到了';是';
我一直在学习坚实,但我还是很新。目前我正在制作ERC20代币,但我在制作时遇到了一些困难。这是我的Blockchain Solidity ParserError:应为'';但是得到了';是';,blockchain,solidity,erc20,Blockchain,Solidity,Erc20,我一直在学习坚实,但我还是很新。目前我正在制作ERC20代币,但我在制作时遇到了一些困难。这是我的 // SPDX-License-Identifier: MIT pragma solidity ^0.8.0; import "https://github.com/OpenZeppelin/openzeppelin-contracts/blob/master/contracts/token/ERC20/ERC20.sol"; import "https://gi
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;
import "https://github.com/OpenZeppelin/openzeppelin-contracts/blob/master/contracts/token/ERC20/ERC20.sol";
import "https://github.com/OpenZeppelin/openzeppelin-contracts/blob/master/contracts/token/ERC20/IERC20.sol";
Contract GToken is ERC20 {
constructor(string memory name, string memory symbol)
ERC20("GToken", "GTKN") public {
_mint(msg.sender, 1000000 * 10 ** uint(decimals));
}
我在尝试编译合同时收到的错误如下:
ParserError:应为“;”但是得到了'is'->GToken.sol:7:21:| 7 | Contract GToken是ERC20{}^您的代码中有两个语法错误:
应为小写,而不是合同
合同
缺少右括号}构造函数
uint(小数)
。当您查看远程合约时,您会看到它是一个视图函数,而不是属性。因此,您应该像调用函数一样读取其值:decimals()
综合起来:
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;
import "https://github.com/OpenZeppelin/openzeppelin-contracts/blob/master/contracts/token/ERC20/ERC20.sol";
// removed the IERC20 import, not needed in this context
contract GToken is ERC20 {
constructor(string memory name, string memory symbol) ERC20("GToken", "GTKN") public {
_mint(msg.sender, 1000000 * 10 ** decimals()); // calling the `decimals()` function
}
}
谢谢你解决了这个问题。