C++含有子对象的类 —— has-a关系
1.子对象初始化
I>子对象调用构造函数
可能会想到这样的初始化方式
class A {
int a;
public:
A(int a = 0) : a(a) { cout << "A::A()" << endl; }
};
class B {
private:
A obj1;
A obj2;
public:
B(int a1, int a2){
cout << "B::B()" << endl;
obj1 = A(a1);
obj2 = A(a2);
}
};
int main() {
B obj(1, 2);
obj.f();
return 0;
}