如何在c ++中输出指针对象的属性(具有2个或更多属性)

时间:2016-03-03 17:00:58

标签: c++

(doswap= true)

2 个答案:

答案 0 :(得分:0)

在B :: getApointerobject()中,您可以递归调用它。你应该改为

A getApointerobject() const { 
    return *APointerObject;
}

在调用getApointerobject()方法之前是否初始化了B :: APointerObject?

答案 1 :(得分:0)

getApointerobject中,您试图返回方法getApointerobject本身的地址。我猜你的代码现在还没有编译?

我想你想要退回APointerObject

  A B::getApointerobject() const { 

   return *this->APointerObject;
}

但建议:内置类型,包括简单指针,没有默认构造函数。因此,由于您没有在APointerObject的构造函数中初始化class B,因此您将使用野指针。这意味着您的程序将在运行时崩溃或更糟(未定义的行为)