solidity 合约间调用以及参数传递

在 以太坊中合约间是可以相互调用,并且正常进行参数传递以及返回值处理.

contract1.sol

pragma solidity ^0.4.0;
contract Test1 {

     uint256 public v=7;
    function vote(uint256 a) public returns (uint256) {
        v=a;
       return (a);
    }
}

contract2.sol

pragma solidity ^0.4.0;
import "./contract1.sol";

contract Test2 {
    Test1 public t;
     uint256 public v=7;
     constructor(address t1) public {
         t=Test1(t1);
     }
    function vote(uint256 a) public {
       v=t.vote(a);
    }
}

如下调用Test2.vote(3)会将合约Test1的 v 和合约Test2的 v 都设置为3.

solidity 合约间调用以及参数传递_第1张图片

你可能感兴趣的:(solidity 合约间调用以及参数传递)