如果一个类的对象是另一个类的数据成员,则称这样的数据成员为对象成员。例如:
class A
{
//...
};
class B
{
A a;
//类A的对象a为类B的对象成员
public:
//...
};
使用对象成员着重要注意的问题是对象成员的初始化问题,即类B的构造函数如何定义?
例如有以下的类:
class X{
类名1
对象成员名1;
类名2
对象成员名2;
...
类名n
对象成员名n;
};
一般来说,类X的构造函数的定义形式为:
X::X(形参表0):对象成员名1(形参表1),...,
对象成员名i(形参表i) ,...,对象成员名n(形参表n)
{
// ...构造函数体
}
调用构造函数X::X时,构造函数执行的顺序为:
先按对象成员在类声明中的顺序依次调用它们的
构造函数,对对象初始化;
再执行X::X函数体
析构函数的调用顺序相反!
class A
{
//...
};
class B
{
A a;
//类A的对象a为类B的对象成员
public:
//...
};
使用对象成员着重要注意的问题是对象成员的初始化问题,即类B的构造函数如何定义?
例如有以下的类:
class X{
类名1
对象成员名1;
类名2
对象成员名2;
...
类名n
对象成员名n;
};
一般来说,类X的构造函数的定义形式为:
X::X(形参表0):对象成员名1(形参表1),...,
对象成员名i(形参表i) ,...,对象成员名n(形参表n)
{
// ...构造函数体
}
调用构造函数X::X时,构造函数执行的顺序为:
先按对象成员在类声明中的顺序依次调用它们的
构造函数,对对象初始化;
再执行X::X函数体
析构函数的调用顺序相反!