0

我有一个类似于以下的 C++ 代码。

class TestA
{

};

class TestB
{
    bool CreateTestAObject( TestA *& arg );
};

基本上我有一个名为TestA. 在另一个名为 的类中TestB,我有一个TestB名为的方法CreateTestAObject( TestA *& arg ),它创建了一个新TestA对象。该方法必须返回一个布尔值,指示该方法的成功或失败。因此,为了返回新创建的 TestA 对象,我使用了带有TestA类指针引用的参数列表。

在我做的 main() 函数中,

TestB objB;
TestA* ptrA = NULL;

objB.CreateTestAObject( ptrA  );

我的问题是,当我编译它时,我收到以下错误。

no matching function for call to TestB::CreateTestAObject(TestA *)
note: candidates are: bool TestB::CreateTestAObject(TestA *&)

我在这里做错了什么?是否需要将论点转换为TestA*&,如果是,为什么?提前致谢。

4

0 回答 0