【问题标题】:A class as data member of another class一个类作为另一个类的数据成员
【发布时间】:2012-05-14 00:33:25
【问题描述】:

我有两个类 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++ constructor datamember


    【解决方案1】:
    C itsC(String str1);
    

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

    C itsC;
    

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

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-01-10
      • 2014-05-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多