当其他类对象作为本类成员,构造时候先构造类对象,再构造自身,析构的顺序与构造相反;
#include<iostream>
using namespace std;
class A {
public:
A(int Num1) {//注意
Num1 = num1;
cout << "A的构造" << endl;
}
~A() {
cout << "A的析构" << endl;
}
int num1;
};
class B {
public:
//A a=aa; 隐式转换法
//前提,对象必须要有有参构造,才能使用隐式转换法
B(int aa, int bb) :num2(bb), a(aa) {
cout << "B的构造" << endl;
}
~B() {
cout << "B的析构" << endl;
}
int num2;
A a; //创建类成员属性
};
void test01()
{
B b(10,10);
}
int main()
{
test01();
return 0;
}