第122篇 笔记-用工厂模式创建合约

Posted wonderBlock

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了第122篇 笔记-用工厂模式创建合约相关的知识,希望对你有一定的参考价值。

本篇可以认为是 第85篇 笔记-用合约创建合约 的续篇;

介绍在工厂模式下,如何随意创建并管理新合约;

// SPDX-License-Identifier: MIT
pragma solidity ^0.8.3;

contract Car 
    address public owner;
    string public model;
    address public carAddr;

    constructor(address _owner, string memory _model) payable 
        owner = _owner;
        model = _model;
        carAddr = address(this);
    


contract CarFactory 
    Car[] public cars;

    function create(address _owner, string memory _model) public 
        Car car = new Car(_owner, _model);
        cars.push(car);
    

    function createAndSendEther(address _owner, string memory _model)
        public
        payable
    
        Car car = (new Car)value: msg.value(_owner, _model);
        cars.push(car);
    

    function create2(
        address _owner,
        string memo

以上是关于第122篇 笔记-用工厂模式创建合约的主要内容,如果未能解决你的问题,请参考以下文章

用工厂/或构建器替换构造函数

什么时候用工厂模式-----转载

用工厂模式解决ASP.NET Core中依赖注入的一个烦恼

第85篇 笔记-用合约创建合约

Tomcat9.0--入门篇1

代码重构:用工厂+策略模式优化过多的if else代码块