码迷,mamicode.com
首页 > 编程语言 > 详细

C++代码学习之一:组合模式例子

时间:2014-09-14 22:02:17      阅读:254      评论:0      收藏:0      [点我收藏+]

标签:style   blog   color   io   for   div   sp   代码   log   

 1 #include"AbstractFile.h" void AbstractFile::add(AbstractFile*) 
 2 { 
 3 } void AbstractFile::remove() 
 4 { 
 5 } void AbstractFile::display() 
 6 { 
 7 } #include"Folder.h" 
 8 folder::folder(string filename) 
 9 { 
10     this->filename=filename; 
11 } void folder::remove() 
12 { 
13 } void folder::add(AbstractFile *p) 
14 { 
15     m_vAbstractfile.push_back(p); 
16 } void folder::display() 
17 { 
18     cout<<"+"<<filename<<endl; 
19     vector<AbstractFile*>::iterator it=m_vAbstractfile.begin(); 
20     for(;it!=m_vAbstractfile.end();++it) 
21     { 
22         (*it)->display(); 
23     } 
24 } 
25  #include"imagefile.h" 
26  void imagefile::add(AbstractFile* p) 
27 { 
28 } 
29 imagefile::imagefile(string filename) 
30 { 
31     this->filename=filename; 
32 } void imagefile::remove() 
33 { 
34 } void imagefile::display() 
35 { 
36     cout<<"图片输出 "<<this->filename<<endl; 
37 } 
38  #include"videofile.h" 
39 videofile::videofile(string filename) 
40 { 
41     this->filename=filename; 
42 } void videofile::add(AbstractFile* p) 
43 { 
44 } void videofile::remove() 
45 { 
46 } void videofile::display() 
47 { 
48     cout<<"影像输出"<<this->filename<<endl; 
49 } 
50  #include<stdio.h> 
51 #include"AbstractFile.h" 
52 #include"Folder.h" 
53 #include"imagefile.h" 
54 #include"videofile.h" int main() 
55 { 
56     AbstractFile *p=new folder("folder"),*p3,*p2,*p4; 
57     folder *p1; 
58     p3=new imagefile("imagefile"); 
59     p2=new videofile("vediofile"); 
60     p4=new imagefile("imagefile2"); 
61     p1=new folder("folder1"); 
62     p->add(p3); 
63     p->add(p2); 
64       
65     p1->add(p4); 
66     p->add(p1); 
67     p->display(); 
68   
69     return 0; 
70 } 

 

C++代码学习之一:组合模式例子

标签:style   blog   color   io   for   div   sp   代码   log   

原文地址:http://www.cnblogs.com/chip/p/3971732.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!