C++程序设计与训练(教学大纲).doc
《C++程序设计与训练(教学大纲).doc》由会员分享,可在线阅读,更多相关《C++程序设计与训练(教学大纲).doc(15页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、本科生课程教学大纲C+程序设计与训练一、课程基本情况课程编号开课学期秋 春 夏学分2课程名称(中文)C+程序设计与训练(英文)C+ Program Design and Training任课教师董炜 助理研究员课程类别必修 限选 任选; 1年级 2年级 3年级 4年级课程学时及其分配课内总学时课内学时分配课外学时分配64课堂讲课30课后复习30自学交流0课外自学15课堂讨论0讨论准备0实验辅导0实验预习15课内实验34课外实验34教学方式课堂讲授为主 实验为主 自学为主 专题讨论为主考核方式期末闭卷考试(30%)+作业(30%)+实验(40%)适用院系适用专业自动化系,计算机科学与技术,电子工
2、程系,软件学院自动化,计算机科学与技术,电子信息工程,电子科学与技术,信息系统与工程先修课程预备知识C语言程序设计教材与参考文献(1)教 材:l 郑莉,董渊,何江舟,C+语言程序设计(第4版),清华大学出版社,2010.7(2)参考文献:l 郑莉,董渊,C+语言程序设计(第4版)学生用书,清华大学出版社,2011.6l Bjarne Stroustrup著,裘宗燕 译,C+程序设计语言(特别版),机械工业出版社,2010.3l Stanley B. Lippman,Josee Lajoie著,潘爱民,张丽 译,C+ Primer中文版(第3版),中国电力出版社,2005.2l George S
3、hepherd, David Kruglinski著,潘爱民 译,Visual C+ .NET技术内幕(第6版),清华大学出版社,2004.7二、课程内容简介本课程是以实践为主的高级语言程序设计课程,在掌握C程序设计的基础上,拓展到面向对象的C+编程。本课程采用课堂授课、课上实验和课后大作业三部分紧密结合的方法,目标是使学生通过本课程的学习,掌握面向对象程序设计的基本概念和方法,C+的语法和编程方法,巩固提高程序调试方法,了解C+模板的使用方法,了解基于MFC(Microsoft Foundation Classes,微软基础类库)的可视化编程方法,掌握以面向对象的编程思想进行程序分析与设计的
4、技能。课程主要内容包括C+语言的基本介绍、面向对象程序设计的基本概念、C+类与对象、继承与重载、C+的I/O流、C+模板、C+异常处理方法、VC(Visual C+)的集成开发环境和调试方法等。三、课程教学大纲第0章 C语言程序设计(复习)0.1 C程序结构及词法0.1.1 一个简单而完整的C程序实例0.1.2 C程序结构0.1.3 C语言字符集0.1.4 C语言词法记号0.1.5 C语言标识符的构成规则0.2基本数据类型及变量0.2.1 基本数据类型0.2.2 常量0.2.3 变量0.2.4 变量的三要素0.2.5 整型变量的溢出0.2.6 浮点数的舍入误差0.3运算符及表达式0.3.1 C
5、语言中的运算符与表达式0.3.2 算术运算0.3.3 赋值运算及复合赋值运算0.3.4 关系运算与逻辑运算0.3.5 条件运算符0.3.6 逗号运算符0.3.7 sizeof运算符0.3.8 位运算0.3.9 运算符的优先级0.3.10 隐含数据类型转换0.3.11 显式数据类型转换0.4执行语句0.4.1 语句种类0.4.2 控制语句0.4.3 if语句0.4.4 switch语句0.4.5 while语句0.4.6 do-while语句0.4.7 for语句0.4.8 其它控制语句0.5用户定义类型0.5.1 结构体0.5.2 结构体变量作为函数参数0.5.3 联合体0.5.4 枚举类型0
6、.5.5 typedef声明0.6函数0.6.1 函数的定义与调用0.6.2 嵌套调用与递归调用0.6.3 函数的参数传递0.6.4 函数实参的求值顺序0.6.5 运行栈与函数调用机制0.6.6 基于函数的C程序结构0.7数组0.7.1 数组的定义与使用0.7.2 数组的存储与初始化0.7.3 多维数组0.7.4 数组作为函数参数0.7.5 字符数组与字符串处理0.8指针0.8.1 指针的概念0.8.2 指针变量的定义与使用0.8.3 指针变量的要素0.8.4 指针的运算0.8.5 用指针处理数组元素0.8.6 指针作为函数参数0.8.7 指向多维数组的指针0.8.8 指针数据类型小结0.9变
7、量的存储类型0.9.1 局部变量和全局变量0.9.2 程序的存储空间0.9.3 变量的存储类型0.9.4 静态局部变量和静态全局变量0.9.5 extern变量声明0.9.6 内部函数和外部函数0.10预处理命令0.10.1 文件包含指令及宏定义0.10.2 条件编译指令第1章 从C到C+1.1 C+概述1.1.1 C+的产生1.1.2 为什么要学C+1.1.3 C+的特点1.1.4 C+的学习方法1.2 对象和面向对象的概念1.2.1 对象的概念1.2.2 面向过程与面向对象的区别1.2.3 面向对象编程语言的优点1.3 新的关键字和使用惯例1.3.1 新的关键字1.3.2 新的使用惯例1.
8、3.3 assert宏1.4 基于流的输入输出机制1.4.1 流的基本概念1.4.2 标准输入输出对象1.4.3 名字空间1.4.4 I/O流格式状态及其操纵符1.4.5 基于流的文件读写1.4.6 流机制的优点1.5 布尔类型与字符串类型1.5.1 布尔类型1.5.2 字符串类型1.6 内联函数1.6.1 引入内联函数的目的1.6.2 内联函数的定义和使用要点1.6.3 内联函数与宏定义的对比1.6.4 使用内联函数的代价与收益1.7 const限定修饰符1.7.1 命名常量1.7.2 指针常量和指向常量的指针1.7.3 const修饰函数形参1.7.4 const修饰函数返回值1.8 引用
9、类型1.8.1 引用的概念1.8.2 引用的定义和使用要点1.8.3 引用与指针的比较和选择1.9 内存分配1.9.1 内存空间划分1.9.2 new和delete操作符1.9.3 申请和释放动态数组1.9.4 动态创建多维数组1.9.5 内存耗尽的处理1.9.6 内存和指针的生存期1.9.7 内存分配与释放要点小结1.10 显式类型转换1.10.1 数据类型转换概述1.10.2 static_cast类型转换1.10.3 指针的安全性隐患1.10.4 reinterpret_cast类型转换1.10.5 const_cast类型转换1.10.6 从语言设计的角度理解多种类型转换第2章 C+类
10、与对象2.1 类的概念2.1.1 对象概念回顾2.1.2 分类的概念2.1.3 面向对象方法中的“类”2.1.4 封装2.1.5 继承2.1.6 多态2.2 类与对象的定义2.2.1 类的定义2.2.2 类成员的访问控制2.2.3 成员函数的定义2.2.4 对象的定义2.2.5 对象成员的访问2.2.6 目的对象与this指针2.3 作用域与可见性2.3.1 作用域的概念2.3.2 局部作用域2.3.3 类作用域2.3.4 文件作用域2.3.5 对象的生存期与可见性2.4 函数的缺省参数2.4.1 缺省参数的作用2.4.2 缺省参数的使用规则2.5 函数重载2.5.1 函数重载的作用2.5.2
11、 函数重载的使用规则2.6 对象的构造与析构2.6.1 构造函数2.6.2 拷贝构造函数2.6.3 缺省构造函数与隐含构造函数2.6.4 析构函数2.7 对象的组合2.7.1 组合的概念2.7.2 组合类的构造函数设计2.7.3 组合类构造函数的调用顺序2.7.4 使用初始化列表的好处2.7.5 深入理解对象的构造与析构过程2.8 UML简介2.8.1 UML概述2.8.2 UML类图2.8.3 UML对象图2.8.4 几种关系的图形标识2.8.5 UML使用示例2.9 综合实例个人银行账户管理2.9.1 程序需求2.9.2 类的设计2.9.3 源程序及说明第3章 类与对象的高级特性3.1 类
12、的前向声明3.1.1 类前向声明的作用3.1.2 类前向声明的使用要点3.2 用构造函数定义类型转换3.2.1 构造函数定义的隐含类型转换3.2.2 explicit关键字3.3 对象作为函数参数及返回值3.3.1 对象作为函数参数3.3.2 对象作为函数返回值3.4 类的静态成员3.4.1 类的静态数据成员3.4.2 类的静态函数成员3.4.3 类静态成员与动态成员的比较3.5 类的友元3.5.1 友元的作用3.5.2 友元函数3.5.3 友元类3.5.4 友元关系的特点3.6 const对象及成员3.6.1 const对象3.6.2 const函数成员3.6.3 const数据成员3.6.
13、4 const引用3.7 对象数组3.7.1 对象数组的定义3.7.2 对象数组的初始化3.7.3 对象数组的应用示例3.8 指向类的成员的指针3.8.1 指向类的非静态成员的指针3.8.2 指向类的静态成员的指针3.9 深拷贝与浅拷贝3.9.1 对象的浅拷贝及其问题3.9.2 对象的深拷贝3.10 动态数组与vector3.10.1 将动态数组封装成类3.10.2 用vector创建动态数组3.10.3 vector应用示例第4章 类的继承与派生4.1 继承与派生的基本概念4.1.1 继承与派生的目的4.1.2 派生类的声明4.2 保护成员与访问控制4.2.1 保护成员的特点与作用4.2.2
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- C+ 程序设计 训练 教学大纲
限制150内