作为另一个类的数据成员的类

A class as data member of another class

本文关键字:数据成员 另一个      更新时间:2023-10-16

我有两个类A和C,我需要在A类中将C的对象作为私有成员。这是我的基本结构,我有以下问题:
1. 如何在构造函数中创建 itsC 对象?
2.我收到以下错误"函数调用缺少参数列表",如下所示

C::C(String strc) 
    {    
    //do something  
    }  

Class A  
{  
public:  
A(String stra, String strb)  ;  
~A();  
C GetC();   //method
private:  
C itsC(String str1);   //data member
}

A::A(String stra, String strb)  
{    
  //create object itsC  
  //strb is needed for str1   
}  
C A::GetC()  
{  
  return itsC;  //error::function call missing argument list
}

谢谢。

C itsC(String str1);

是成员函数声明,而不是数据成员。它应该是

C itsC;

然后你可以用A::A初始化它

A::A(String stra, String strb) : itsC(stra) { }