假设我有一个名为MyClass的类,
我正在编写一个函数,该函数应返回Myclass类型的对象。调用函数之前,该对象已经存在。所以通常我会这样做:
MyClass function() {
return MyClassInstance;
}
但是后来我想起了指针和引用,我认为这样做会创建MyClassInstance的新副本并返回它,这会浪费内存。所以我想,为什么不做这样的事情:
MyClass * function() {
return &MyClassInstance;
}
所以结果可以访问为
Myclass * object;
object = function();
object->"class member"...
这是对的吗?
最佳答案
您肯定可以那样做。它将运行正常。从语法方面来说没有问题。但是您需要格外小心,以确保有多个指针指向该对象。这可能会给您带来一些隐藏的问题。
关于c++ - 返回指向类的指针的函数,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/15376174/