pragma solidity ^0.4.23;
contract ApprovalContract {
address public sender;
address public receiver;
address public constant approver = 0x5AEDA56215b167893e80B4fE645BA6d5Bab767DE;
constructor() public {
// tbd
}
function deposit(address _receiver) external payable {
require(msg.value > 0);
sender = msg.sender;
receiver = _receiver;
}
function viewApprover() external pure returns(address){
return(approver);
}
function viewRe() external pure returns(address){
return(receiver);
}
function approve() external payable{
require(msg.sender == approver);
receiver.transfer(address(this).balance); // this line not working
}
}
I am getting transfer variable not visible.
Member "transfer" not found or not visible after argument-dependent
lookup in address.
Best Answer
Use
in declaration for the addresses you are looking to transfer Ether in contract. As per the solidity documentation: