我的开源工具包中的对象都基于AbstractObject类。我想在AbstractObject中添加一个函数,它将创建并返回完全相同类的对象。
这与克隆不同,因为不会复制属性值。我想过调用它duplicate
但是在使用ActiveRecord类时会让人感到困惑(因为重复会用于复制记录,而不是对象)。
form2 = form1->createObjectWithSameClass()
请为此建议一个单词(最好)名称。我很感激你的时间!
答案 0 :(得分:2)
根据此处的信息,这听起来像您希望另一个类型的普通对象作为范围内的变量,类型是唯一需要的上下文创建对象。
在这种情况下,这听起来像Factory的有效案例,而不是挂起实例的方法。你可以做,也许:
myFactory.create(form1)
或
myFactory.create(form1.getClass())
编辑:这不是你问题的直接答案,但是因为你关注命名,因此我假设代码清晰,模式的一大好处就是清晰度(每个人都知道工厂是什么,所以他们不会因为你最终选择的名字而感到困惑。)