Solidity通过合约转ERC20代币

ERC20代币并不能像Ether一样使用sendTo.transfer(amt)来转账,ERC20代币只能通过token中定义的transfer方法来转账,每个账户的余额信息也只保存在token合约的状态变量中。如果要使用除token合约之外的合约进行ERC20代币的转账,那就需要这个合约能够调用ERC20代币合约中的transfer方法。

 

pragma solidity ^0.4.21;

contract token { function transfer(address receiver, uint amount){ receiver; amount; } } //transfer方法的接口说明
contract TokenTransfer{
    token public wowToken;
    
    function TokenTransfer(){
       wowToken = token(0x337ec02daab853b38fcea506bcc6d9d8f1d6d109); //实例化一个token
    }
    
    function tokenTransfer(address _to, uint _amt) public {
        wowToken.transfer(_to,_amt); //调用token的transfer方法
    }
}

 

posted @ 2018-05-02 16:33  huahuayu  阅读(4356)  评论(0编辑  收藏  举报