我有以下 c++ 类
class Object
{
public:
Object(parameters);
...
const Object& method1(parameters) const;
Object& method2(parameters) const;
private:
}
和method1
实现method2
是:
const Object& Object::method1(parameters) const
{
...
Object* _obj = new Object;
...
return *_obj;
}
Object& Object::method2(parameters) const
{
...
Object* _obj = new Object;
...
return *_obj;
}
我还没有定义复制构造函数。我知道函数返回对分配对象的引用,我仍然必须使用“删除”来删除它。我想避免浪费内存并保留信息隐藏。
这是这样做的正确方法,还是我错过了什么?