Code has been added to clipboard!
Solidity Visibility And Getters Example 2
Example
// This code does not compile properly
pragma solidity ^0.4.0;
contract cont1 {
uint private data;
function func(uint x) private returns(uint y) { return x + 1; }
function dataSet(uint x) { data = x; }
function dataGet() public returns(uint) { return data; }
function compute(uint x, uint y) internal returns (uint) { return x+y; }
}
contract cont2 {
function dataRead() {
cont1 z = new cont1();
uint local = z.func(7); // error: member "func" is not visible
z.dataSet(3);
local = z.dataGet();
local = z.compute(3, 5); // error: member "compute" is not visible
}
}
contract cont3 is cont1 {
function g() {
cont1 z = new cont1();
uint val = compute(3, 5); // access to internal member (from derived to parent contract)
}
}