I have 2 contracts:
pragma solidity ^0.4.18;
contract Coin {
function transfer(address whom, uint256 amount) public;
}
contract ManagedWallet {
event ReceivedEther(address source, uint256 amount);
event ContractCalled(address theContract,uint256 value, bytes data);
function () public payable {
ReceivedEther(msg.sender,msg.value);
}
function sendEther(address whom, uint256 amount) public {
whom.transfer(amount);
}
function sendToken(Coin token, address whom, uint256 amount) public {
token.transfer(whom,amount);
}
function callContract(address theContract, uint256 value, bytes data) public {
require(theContract.call.value(value)(data));
ContractCalled(theContract,value,data);
}
}
But when I try to deploy that Coin
contract, I get this error in Remix.
This contract does not implement all functions and thus cannot be created
What am I missing here? Really appreciate help because I'm new to smart contract development and Solidity.