工厂方法到底是什么?如何用动态链接库实现?
发布于 2011-02-10 14:52:56
工厂的基本思想是,函数返回从已知基类派生的堆分配对象。因此,在您的情况下,您可能会在主应用程序中有一些调用dll中的工厂的代码,以获取未知动态类型和实现的对象,但您将知道它满足特定基类的API要求。然后,您可以通过该接口使用该对象,并通过其可能的虚拟析构函数删除它。工厂方法有许多类型,这取决于如何选择实际的派生类,但通常它会检查函数、IO流或XML结构等的一些输入,并确定适当的类型。工厂是否在dll中对这里的整体模型没有任何影响,但它确实使更新派生对象的列表和实现变得更容易,而无需重新编译应用程序。
有关更多详细信息,请参阅:http://en.wikipedia.org/wiki/Factory_method_pattern
发布于 2011-02-10 14:50:25
工厂方法是一种创造性的模式。此模式有助于对用于创建对象的接口进行建模,该接口可以在创建时让其子类决定实例化哪个类。我们称其为工厂模式,因为它负责“制造”对象。它通过从一组相关类中创建正确的对象来帮助实例化适当的子类。工厂模式消除了将特定于应用程序的类绑定到代码中的需要,从而促进了松散耦合。
工厂模式就是这样:“定义一个用于创建对象的接口,但让子类决定实例化的类。工厂方法让类将实例化推迟到子类”。因此:“工厂方法让类将实例化推迟到子类”。
查看适用于One typical use of the Factory Pattern in a Component Object Model (COM) application的内容
https://stackoverflow.com/questions/4954148
复制相似问题