carysu@126.com

carysu@126.com
posts - 11, comments - 0, trackbacks - 0, articles - 0

类中包含子对象

Posted on 2011-07-16 19:59 susu 阅读(276) 评论(0)  编辑 收藏 引用
 1#include <iostream>
 2#include <string>
 3using namespace std;
 4
 5class A
 6{
 7public:
 8    A(int i)
 9    {
10        cout << "A constructore" << endl;
11    }

12    ~A()
13    {
14        cout << "A destructore" << endl;
15    }

16}
;
17class B
18{
19public:
20    B(int i)
21    {
22        cout << "B construtore" << endl;
23    }

24    ~B()
25    {
26        cout << "B destructore" << endl;
27    }

28}
;
29class sample
30{
31public:
32    sample():b(20),a(10)
33    {
34        cout << "Sample Constructore" << endl;
35    }

36    ~sample()
37    {
38        cout << "sample destructore" << endl;
39    }

40private:
41    A a;
42    B b;
43}
;
44void main()
45{
46    sample s;
47}

48/*当一个类中包含子对象时,构造函数的调用顺序是先调用子对象的构造函数(按他们在类中定义时出现的顺序,而不是构造列表中的顺序)
49然后再调用当前对象的构造函数的代码,调用析构函数的顺序与构造函数的顺序刚好相反
50*/

只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理