面向对象程序设计课程设计报告-正文参考模板.docVIP

面向对象程序设计课程设计报告-正文参考模板.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
面向对象程序设计课程设计报告-正文参考模板

目 录 1 前言 1 2 需求分析 1 2.1 要求 1 2.2 任务 1 2.3 运行环境 1 2.4 开发工具 1 3 分析和设计 1 3.1 系统分析及设计思路 1 3.2 主要类图 2 3.3 函数流程图 2 4 具体代码实现 2 5 课程设计总结 2 5.1 程序运行结果或预期运行结果 2 5.2 设计结论 2 参考文献 2 致 谢 3 1 前言 设计一个使用空格和星号绘制图形的工厂,该工厂可以根据用户选择绘制不同的图形(如矩形、三角形、菱形、平行四边形、梯形等)。然后根据用户的要求绘制各类图形,显示绘制图形个数,并在屏幕上显示所设置的图形。 2 需求分析 2.1 要求 (1)至少能够绘制6种以上的图形。 (2)可以绘制的图形名称保存在文本文件中。 (3)根据用户选择设置图形参数绘制图形,并记录绘制了的图形的个数。 (4)显示已经绘制的图形的总数。 2.2 任务 设计一个使用空格和星号绘制图形的工厂,该工厂可以根据用户选择绘制不同的图形(如矩形、三角形、菱形、平行四边形、梯形等)。 2.3 运行环境 (1)WINDOWS2000/XP系统 (2)Visual C++ 6.0编译环境或DEV C++ 5.0编译环境 C++语言 3 分析和设计 3.1 系统分析及设计思路 1.首先得有一个图形抽象基类graph class graph //基类 { protected : graph(){}; public: virtual ~graph(){}; virtual void function()=0; //纯虚函数 }; 2.然后写几个图形类,图形有等腰三角形、正方形、长方形、平行四边形、等腰梯形和菱形六种。 class Triangle:public graph //等腰三角形 { void Triangle::function() { //根据用户设置的高length,绘制等腰三角形 } } class Square:public graph //正方形 { void Square::function() { //根据用户设置的边长length,绘制正方形 } } class Rectangle:public graph //长方形 { void Rectangle::function() { //根据用户设置的长Long和宽Wide,绘制长方形 } } //…………其他图形类似 3.然后写一个图形工厂类来生产图形 class simplefactory //简单工厂模式 { public : graph * creategraph(int graphtype); }; graph * simplefactory::creategraph(int graphtype) { switch(graphtype) { case 1 p=new 等腰三角形();break ; case 2: p=new 正方形…… case 3: p=new 长方形…… case 4: p=new 平行四边形…… case 5: p=new 等腰梯形…… case 6: p=new 菱形…… } return p; } 4.接下来在主函数里,通过用户调用工厂方法生成想要的图形就可以了 class client //用户 { public: void Main(); }; void client::Main() { /*展示目前自定义图形工厂中可以提供输出的图形列表:Triangle(等腰三角形),Square(正方形),Rectangular(长方形),Parellelogram(平行四边形)等……*/ while(!menu.eof()) {menu.getline(str,sizeof(str));coutstrendl;} while(true) { //提示用户输入所要图形名称(图形列表中所列) cout请选择需要创建图形的序号:endl; cinkey; graph *p=sf.creategraph(key); //输出用户绘制图形总数total ofstream save(

文档评论(0)

hello118 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档