《C++面向对象程序设计(课程教学大纲).docx》由会员分享,可在线阅读,更多相关《C++面向对象程序设计(课程教学大纲).docx(28页珍藏版)》请在优知文库上搜索。
1、C+面向对象程序设计(课程教学大纲)课程教学大纲课程名称中文名称C+面向对象程序设计英文名称C+Object-OrientedProgramming教学目本课程的目标是促进学生理解和建立面向对象的程序设计思想,并使得学生掌握采用C+面向对象程序设计方法来求解实际问题,培养学生问题分析、标对象模型建立、代码编写、程序验证,和程序调试的能力,提高程序编写效率和运行效率,提高代码的可贪用性和可维护性。课程负贵人雍俊海学分学时学时安排(课内外学时比为1: 2)学分32/64(教学学时/课外学时)本科课程分类课程类型2:本科学科基础课授课语种中文考核方式考试教材雍俊海C+程序设计从入门到精通.北京:清隼
2、大学出版社.书号(ISBN):978-7-302-59237-2.先修要求程序设计基劭或者C语言程序设计.适用院系及软件工程或计算机专业专业(本课程与培养方案的关系,与同类课程的比较分析等):应学校的大类招生.培养要求设立本课程,本课程是软件工程与计算机学科的基础课程,将为本学科的后续学习建立必要的基础。课程设立依据国内外软件工程与计算机科学与技术专业的院系均大多设立同类课程。与校内外大学的同类课程相比,符G清华大学学生的特点,采用最新的C+标准,并将面向对象与程序复用性和扩展性相结合,具仃新颖性和实用性等特色。1课程内容简介面向对象已成为计算机和软件工程领域的主流技术之一,C+语言有效支持面
3、向对象设计思想,应用十分广泛。本课程讲解面向对象的思维模式和程序设计方法,涵盖类、对象、封装、继承、多态、模板、编程规范、设计模式、程序测试和程序调试等内容。本喋程的目标是促进学生理解和建立面向对象的程序设计思想,并使得学生掌握采用面向对象程序设计方法来求解实际问题,培养学生问题分析、对象模型建立、代码编写、程序验证,和程序调试的能力,提高程序编写效率和运行效率,提高代码的可复用性和可维护性。Object-orientedtechniqueisoneofthemaintechniquesinthefieldsofcomputersandsoftwareengineering.C+program
4、mingcanwellsupporttheobject-orienteddesignidea,andiswidelyused.Thiscourseintroducestheobject-orientedthinkingmodelandtheobject-orientedprogramdesignmethod.Thecontentscoverclasses,objects,encapsulation,inheritance,polymorphism,templatescodingstandards,designpatterns,programtestinganddebuggingprograms
5、.Thiscourseaimstohelpstudentstounderstandandbuildtheobject-orientedprogrammingdesignidea.Studentsarerequiredtomastertheobject-orientedprogrammingdesignmethodtosolvesomepracticalproblems.Thiscoursewilltraintheabilitiesofstudentsincludingproblemsanalysis,buildingobjectmodels,coding,programtesting,andd
6、ebuggingprogramssuchthattheefficiencyofcodingandrunningprogramswillbeimproved.Moreover,reusabilityandmaintainabilityofprogramswillbeenhancedaswell.2成绩评定标准所占比例%作业30%、期末考试40%、项目30%3教学安排第几讲主要内容教学要素教学时数课外学时(身每讲对应)活动学时数1绪论 励志 学习方法 0简介 课程简介 什么是好的C+程序?讲授(LEC)2习题42类与对象基础 面向对象基本思路 类声明,定义基础,面向对象程序示例 构造函数 析构函数
7、 在C”中申请和释放内存 访问类的成员Ot(LEC)2习题43继承性 继承性总体概述 类继承格式与代码示例 在类维承下的构造函数与析构函数 子类与父类的兼容性 虚拟继承继承与组合的区别讲授(LEc)2习题44时装性 维承方式与访问方式 封装性例程 封装性的注意事项 在继承性中的全局类友元讲授(LEC)2习题45多态性 多态性概述 静态多态性 运算符用教 动态多态性 纯虚函数 抽象类讲授(LEQ2习题46指针和左值引用 指针 指针与nst 左值引用 函数参数的传递方式 双向链表案例讲授(LEC)2习题47MFC程序图形界面设计 MFC慨述 MFC多文档例程 使用CDC类的基础 CDC类点集的包围
8、附程序例程基础框架讲授(LEC)2习题48MFC事件处理 点集的包围园程序例程事件处理 基r对话框的MFC程序讲授(LEQ2习胭49模板函数模板类模板向量vector集合set排序(Sort)讲授(LEQ2习题410字符中处理 字符系列类型 字符数组形式的字符串 字符串类 超氏整数案例讲授(LEQ2习411流 流的基本概念流类和流对象 标准输入输出流 格式控制 文件输入输出流讲授(LEQ2习题412命名空间、异常处理、类对象和垠体模式讲授(LEQ2习题413设计模式设计模式简介适配器模式讲授(LEQ2习题4工厂方法模式14编程规范、内联函数与共用体讲授(LEQ2习题415策略模式与程序测试策略
9、模式 程序测试基本原理 黑盒测试 白盒测试讲授(LEC)2习题416 CI面向对象程序设计注意事项汇总 综合练习 答疑讲授(LEQ2习鹿4合计教学时数:32实验时数:0课外学时:64配套参考教材内容简介本书讲解C+程序设计知识及其编程方法,包括结构化程序设计、面向对象程序设计、共用体、异常处理、模板与标准模板库、字符串处理、标准输入输出与文件处理、MFC图形界面程序设计、设计模式、编程规范、程序调试与测试等内容,并且每章都附有习题。本书的章节编排与内容以人们学习与认知过程为基础,紧扣最新国际标准,与公司的实际需求相匹配。本书采用特殊字体突出中心词,以期读者在轻松和欢乐之中迅速了解与掌握C+程序
10、设计的知识和方法,并应用到实践中去。本书内容丰富易学,而且提供丰富例程和例句,既可以作为计算机专业和非计算机专业的C+程序设计和面向对象程序设计等课程的基础教材,也可以作为得要使用C+语言的工程人员和科技工作者的自学参考书。本书特色直点突出:本书不仅在内容上抓住并突出C+程序设计的重点和核心本质,而且在形式上通过加粗加框的方式突出各部分内容以及各个概念的中心词。准确严谨:本书努力去除现有C+相关文献资料中的浮华与众多的错误,内容准确严避,并且详细讲解如何进行C+程序等价类划分,提高程序测试的有效性。内容新颖;本书内容紧扣最新国际标准和软件产业最新实际需求,在C+面向对象程序设计、图形界面程序设
11、计、设计模式和编程规范等方面具有鲜明特色。例程丰富:本书提供了109个例程和众多的示例性代码,采用简明方式揭示C+程序设计本质之处,通过翔实例程和例句展现C+编程思想,方便入门与自学。目录向上滑动阅览第1章绪论11.1 C+语言简介11.2 C+入门程序41.2.1 常规项目操作41.2.2 C+类C部分经典入门程序51.2.3 C+类C部分结构化入门程序111.2.4 C+面向对象部分入门程序151.3 本章小结171.4 习题171.4.1 练习题171.4.2 思考题18第2章结构化程序设计192.1 预备知识192.1.1 标识符192.1.2 关健字和保留字212.1.3 文件包含语
12、句232.1.4 宏定义与条件编译241.1.2 布尔类型281.1.3 整数系列类型281.1.4 字符系列类型301.1.5 浮点数类型321.1.6 枚举类型341.1.7 数组类型和基于数组的字符串361.1.8 指针类型与动态数组391.1.9 左值引用与右值引用421.1.10 自动推断类型auto431.1.11 类型别名定义typedef441.1.12 常量属性ConSt452.3 运算462.3.1 算术运算482.3.2 关系运算502.3.3 逻辑运算502.3.4 位运算502.3.5 赋值类运算532.3.6 条件运算532.4 控制结构542.4.1 if语句和i
13、f-else语句552.4.2 switch语句572.4.3 for语句602.4.4 while语句642.4.5 do-while语句652.4.6 continue语句652.4.7 break语句672.5 模块划分682.5.1 函数基础682.5.2 主函数main772.5.3 函数递归调用782.5.4 函数指针类型812.5.5 关键字static832.5.6 模块划分的原则与过程852.6 本章小结892.7 习题892.7.1 练习题892.7.2 思考题92第3章面向对象程序设计基础931.1.1 类声明与类定义基础941.1.2 成员变量941.1.3 位域961
14、.1.4 类对象与实例对象971.1.5 构造函数1011.1.6 析构函数1081.1.7 成员函数1113.2 继承性1143.2.1 基本定义1143.2.2 父子类实例对象之间的兼容性1213.2.3 基本原则1243.2.4 虚拟继承1283.2.5 初始化单元和委托构造函数1333.2.6 构造函数与析构函数的执行顺序1353.3 封装性1463.3.1 成员的访问方式1473.3.2 维承方式和访问方式1523.3.3 在继承中的全局类1561.1.1 函数重载(价态多态性)1691.1.2 默认函数参数值1751.1.3 运算符重载1771.1.4 函数覆盖(动态多态性)1833.5 关键字this1933.6 函数调用和关