读书人

请教CB的这个构造函数怎么写

发布时间: 2014-04-18 13:02:20 作者: rapoo

请问CB的这个构造函数如何写?
构造函数初始化列表的知识:
不知道如何编写 CB的 构造函数,求解释说明,谢谢!

class CA
{
public:
CA(const int a):n(a){}
~CA(){}

private:
const int n;
}

class CB
{
public:
// 这里如何编写 CB的构造函数?求指教,谢谢!

private:
CA m_obj;
}


[解决办法]
这样就可以吧:
#include <iostream>

using namespace std;

class CA
{
public:
CA(const int a) : n(a) {}
~CA() {}

private:
const int n;
};

class CB
{
public:
CB(const int a) : m_obj(a) {}

private:
CA m_obj;
};

int main()
{
CB b(100);

return 0;
}

[解决办法]
多了一个括号
[解决办法]
引用:
下面代码报错: missing ';' before 'public'
不是吧,这是什么原因报错?? 求解释 非常感谢!


#include <WINDOWS.H>

class CA()
{
public: //这行报错
CA(const int n);
~CA();
private:
const int m_nNum;
};


CA::CA(const int n) : m_nNum(n)
{
}
int main()
{
return 0;
}

你往上多看一眼就能看到"class CA()"多了一个"()".为什么就不多看那一眼呢?

至于你的问题:

class CA
{
public:
CA(const int a):n(a){}
~CA(){}

private:
const int n;
}

class CB
{
public:
CB(const int a):m_obj(a){}
~CB(){}
private:
CA m_obj;
}

读书人网 >C++

热点推荐