forked from FengJungle/DesignPattern
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathmain.cpp
More file actions
60 lines (45 loc) · 1.24 KB
/
main.cpp
File metadata and controls
60 lines (45 loc) · 1.24 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
#include <iostream>
#include "CompositePattern.h"
int main()
{
Component *head, *sichuanBranch, *cdBranch, *myBranch, *office1, *office2, *office3,
*office4, *office5, *office6, *office7, *office8;
head = new SubComponent("总部");
sichuanBranch = new SubComponent("四川分部");
office1 = new AdminOffice("行政办公室");
office2 = new DeanOffice("教务办公室");
cdBranch = new SubComponent("成都分部");
myBranch = new SubComponent("绵阳分部");
office3 = new AdminOffice("行政办公室");
office4 = new DeanOffice("教务办公室");
office5 = new AdminOffice("行政办公室");
office6 = new DeanOffice("教务办公室");
office7 = new AdminOffice("行政办公室");
office8 = new DeanOffice("教务办公室");
cdBranch->add(office5);
cdBranch->add(office6);
myBranch->add(office7);
myBranch->add(office8);
sichuanBranch->add(office3);
sichuanBranch->add(office4);
sichuanBranch->add(cdBranch);
sichuanBranch->add(myBranch);
head->add(office1);
head->add(office2);
head->add(sichuanBranch);
head->operation();
system("pause");
delete head;
delete sichuanBranch;
delete cdBranch;
delete myBranch;
delete office1;
delete office2;
delete office3;
delete office4;
delete office5;
delete office6;
delete office7;
delete office8;
return 0;
}