类成员是怎么初始化的?

2024-12-17 10:12:38
推荐回答(4个)
回答1:

希望下面的code能解答你的问题!

#include "Time.h"
#include "Name.h"
#include

#include // ostringstream
class Entry
{
public:
//默认构造器
Entry();
//构造器
Entry( /* in */ string firstName, // First name
/* in */ string middleName, // Middle name
/* in */ string lastName, // Last name
/* in */ int initHours, // Hours
/* in */ int initMinutes, // Minutes
/* in */ int initSeconds ); // Seconds
private:
Name name;
Time time;
};

#include "Entry.h"

//默认构造器
Entry::Entry()
{
}

//构造器
Entry::Entry( /* in */ string firstName,
/* in */ string middleName,
/* in */ string lastName,
/* in */ int initHours,
/* in */ int initMinutes,
/* in */ int initSeconds )
: name(firstName, middleName, lastName),
time(initHours, initMinutes, initSeconds)
{
}

回答2:

在A的构造函数中调用B类的构造函数即可初始化了。就这么简单。

回答3:

class B
{
public:
B(int b=0){a=b;}//默认构造函数
private:
int a;
};
class A
{
public:
A(int h,char e=''):B(h){c=e;}//初始化成员列表的方式
private:
B b;
char c;

};

回答4:

我觉得可以嵌套吧。例如:
class B
{
public:
int a;
};
class A
{
pravite:
B c;
public:
A(){c.a=1;}
};