Kev*_*n M 4 blockchain ethereum solidity smartcontracts
如果智能合约具有已编译的合约字节码,可以先部署后续合约吗?
根据 Ethereum.org 的说法:“要部署智能合约,您只需发送包含智能合约编译代码的以太坊交易,而无需指定任何接收者。”
我寻找如何通过智能合约发送交易,我能找到的最接近的是转移 ETH 的示例......
_to.transfer(msg.value);
bool sent = _to.send(msg.value);
(bool sent, bytes memory data) = _to.call{value: msg.value}("");
Run Code Online (Sandbox Code Playgroud)
小智 8
要使智能合约部署另一个智能合约,您可以使用 new 关键字来完成
contract UserMessage {
string message;
constructor(string memory message){
message = _message;
}
}
contract DeployUserMessage {
mapping(address => address) userToContract;
function Deploy(string memory message) public {
address contractAddress = new UserMessage(message);
userToContract[msg.sender] = contractAddress;
}
}
Run Code Online (Sandbox Code Playgroud)
我认为这个例子很清楚,但如果你愿意,请查看文档https://docs.soliditylang.org/en/v0.8.9/contracts.html#creating-contracts
| 归档时间: |
|
| 查看次数: |
5534 次 |
| 最近记录: |