Solidity

來自 BasicToken 的 BalanceOf 和來自 ERC20Basic 的 totalSupply 在 Crowdsale.sol 中不起作用

  • August 3, 2017

我正在使用來自OpenZeppelin / zeppelin- solidity 的 Crowdsale.sol 。這是一個片段:

import '../token/MintableToken.sol';
import '../math/SafeMath.sol';

/**
* @title Crowdsale 
* @dev Crowdsale is a base contract for managing a token crowdsale.
* Crowdsales have a start and end block, where investors can make
* token purchases and the crowdsale will assign them tokens based
* on a token per ETH rate. Funds collected are forwarded to a wallet 
* as they arrive.
*/
contract Crowdsale {
 using SafeMath for uint256;

 // The token being sold
 MintableToken public token;

這是從 MintableToken 繼承的嗎?

MintableToken.sol 繼承自 StandardToken.sol 和 Ownable.sol。StandardToken.sol 繼承自 BasicToken.sol 和 ERC20.sol。BasicToken.sol 繼承自 ERC20Basic.sol 和 SafeMath.sol。

我想function balanceOf從 BasicToken.sol 和ERC20Basic.sol 中使用uint256 public totalSupply,但在創建 Crowdsale 合約後,這些不會出現在remix.ethereum.org(使用“JavaScript VM”)上。

如果我將 Crowdsale.sol 更改為以下任何一項:

contract Crowdsale is StandardToken {

contract Crowdsale is MintableToken {

contract Crowdsale is BasicToken {

balanceOftotalSupply出現(在創建合約之後),但它們只返回 0。我向合約發送了一些資金並將發件人的地址輸入balanceOf並返回 0。我點擊totalSupply它返回零。他們似乎沒有工作。

我需要做什麼才能讓這些工作?

我認為你誤解了那堂課。從外觀上看,Crowdsale.sol 是一個代幣工廠。動態生成 MintableToken 合約需要付費。

然後,您需要訪問新鑄造的代幣以訪問實際的代幣功能。

引用自:https://ethereum.stackexchange.com/questions/23501