C ++最佳实践 - 使用类方法,类构造函数或实例方法复制对象

时间:2013-08-27 04:55:47

标签: class implementation

我想在我正在努力支持重复实例对象的小型库中的类,所以我想知道添加此功能的最佳做法是什么。

使用类方法重复:

Myclass* obj2 = MyClass::duplicate(obj1);

......类构造函数:

Myclass* obj2 = MyClass(obj1);

...实例方法:

Myclass* obj2 = obj1.duplicate();

1 个答案:

答案 0 :(得分:1)

实例方法可能是未来最好的方法。我正在从Java的clone()方法中抽出一片叶子。你可以拥有一个带有空实现的超类,你只需使用继承,让子类自定义它们的版本。