其他分享
首页 > 其他分享> > solidity基础-合约创建合约

solidity基础-合约创建合约

作者:互联网

合约创建合约

合约对

contract Pair {

  address public factory;
  string public token0;
  string public token1;

  constructor(string memory _token0, string memory _token1) payable{
    token0 = _token0;
    token1 = _token1;
    factory = msg.sender;
  }
  

}

创建合约工厂

contract Factory{
  
    Pair[] public allPairs;

    function create(string memory _token0, string memory _token1) public {
      Pair pair = new Pair(_token0, _token1);
      allPairs.push(pair);
    }

    function create2(string memory _token0, string memory _token1) public payable{
      Pair pair = (new Pair){value: msg.value}(_token0, _token1);
      allPairs.push(pair);
    }

}

部署合约 Factory

调用 create2方法

 

通过 allPairs 方法,获取 创建的合约地址

 将该合约地址,赋值于 AT Address 方法

 

就可以得到Factory 创建的合约, 可以看到该合约地址就是上面创建的合约

 

标签:string,创建,solidity,token1,token0,memory,Pair,合约
来源: https://www.cnblogs.com/apenote/p/16359909.html