表达式和控制结构 — Solidity中文文档https://learnblockchain.cn/docs/solidity/control-structures.html
有两种方法可以在合约中创建新合约,create
和 create2;
1. 通过 new
创建合约 create
使用关键字 new
可以创建一个新合约。待创建合约的完整代码必须事先知道,因此递归的创建依赖是不可能的。
create
的用法很简单,就是 new
一个合约,并传入新合约构造函数所需的参数:
Contract x = new Contract{value: _value}(params)
其中 Contract
是要创建的合约名,x
是合约对象(地址),如果构造函数是 payable
,可以创建时转入 _value
数量的 E