0

假设我有一个名为 MyClass 的类,

我正在编写一个应该返回 Myclass 类型的对象的函数。该对象在调用函数之前已经存在。所以通常我会这样做:

MyClass function() {
return MyClassInstance;
}

但是后来我想起了指针和引用,我认为这样做会创建一个 MyClassInstance 的新副本并返回它,这是浪费内存。所以我想,为什么不做这样的事情:

MyClass * function() {
return &MyClassInstance;
}

所以结果可以被访问为,

Myclass * object;
object = function();
object->"class member"...

这是正确的吗?

4

2 回答 2

1

我不确定你是什么是你的最终目标,语法看起来不错。但也许你应该阅读 C++ 中的单例模式。

于 2013-03-13T03:01:54.433 回答
0

你肯定可以那样做。它会运行正常。它从语法方面没有问题。但是您需要非常小心,指向对象的指针不止一个。这可能会给你带来一些隐藏的问题。

于 2013-03-13T02:56:36.840 回答