【发布时间】:2016-03-31 15:33:03
【问题描述】:
我有以下问题:
我有一个静态工厂类和一堆产品类。
工厂类应该被赋予一堆字符串向量,并且能够将产品对象作为 BaseProductClass 返回。
所以我基本上会给工厂类参数“香蕉”、“绿色”和“新鲜”,它会返回一个绿色的新鲜香蕉作为产品类。
我遇到的问题是 Factory 类在技术上不应该知道所有 Product 类,而只知道 Product 基类。但是,它应该有一个类型数组,其中所有产品类都存储为与标识它们的字符串相关联的通用类型(或者字符串是类的一部分,并且可以以某种方式提取)。
它应该能够获取第一个字符串参数,将其连接到一个类型,然后将此类型发送到 String 数组并让它自己初始化。
最后,我应该能够创建新的 Product 类并将它们输入到通用类型数组中。
有谁知道实现这样的事情的最优雅的方法?
【问题讨论】:
标签: c++ oop inheritance types