Как развернуть собственный токен-контракт через Remix?

Я развернул обычный токен-контракт, совместимый с ERC20, через компилятор Remix и MetaMask. После этого развернутый токен отображается на Etherscan как токен. Однако, когда я пытаюсь развернуть контракт токена, который принадлежит, мне нужно развернуть контракт токена и контракт владельца отдельно, в результате чего получается два изолированных контракта из одного и того же исходного кода.

Я использую очень простой код контракта с официального сайта Ethereum: https://ethereum.org/token#full-coin-code.

Любая помощь вам будет оценена

Ответы (1)

Вам не нужно развертывать унаследованный контракт (принадлежащий) отдельно, вам просто нужно унаследовать его в контракте токена, добавив "is owned"(пример ниже).

Еще немного информации о наследовании здесь. http://solidity.readthedocs.io/en/develop/contracts.html#inheritance

pragma solidity ^0.4.18;

contract owned {
    function owned() { owner = msg.sender; }
    address owner;
}


// Use "is" to derive from another contract. Derived
// contracts can access all non-private members including
// internal functions and state variables. These cannot be
// accessed externally via `this`, though.
contract MyToken is owned {
    function kill() {
        if (msg.sender == owner) selfdestruct(owner);
    }
}

Затем в Remix вы можете выбрать развертывание только MyToken . Поскольку исходный код контракта относится к owned ( "is owned"), этот ownedкод будет включен в скомпилированный код MyToken.

Разверните только MyToken: Развертывание только MyToken