C++ 返回对象的引用

标签 c++

    MyClass& getMyClass() {return m_class}

private:

    myClass* m_class;

这给了我错误信息: 错误:类型“myClass&”的引用初始化无效 来自 'myClass*' 类型的表达式

我应该更改什么才能使其正常工作?我想返回这个对象的引用。所以我不想更改 getMyClass 函数原型(prototype)。

最佳答案

改成

return *m_class;

确保 m_class 是一个有效的指针(例如,不是 NULL 或已释放)!

关于C++ 返回对象的引用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15484205/

相关文章:

c++ - 如何在顶部 2D 小 map 上显示以 3D 视角呈现的平面世界的可见部分?

c++ - 精神文法无法编译 : function template argument error?

c# - C# 中 native C++ dll 的问题

c++ - 类中的奇怪实例化

c++ - 是否可以在 Linux 中将数据写入自己的标准输入

c++ - 用esp8266解析SD卡数据

c++ - 是否有一种优雅的解决方案来区分模板成员函数调用中的 void 和非 void 参数?

c++ - Hook Outlook,权限问题

c++ - 我可以在基类方法中设置一个条件断点,仅当它是特定派生类的实例时才会触发?

c++ - 使用少于需要的参数调用函数