第1篇 入门篇 2
第1章 C++轻松入门(教学视频:49分钟) 2
1.1 C++基础知识 2
1.1.1面向对象编程 2
1.1.2 C++程序的基本结构 3
1.2 C++开发工具介绍 4
1.2.1安装Visual C++集成开发环境 4
1.2.2启动Visual C++编译器 8
1.2.3 Visual C++菜单详解 9
1.2.4 Visual C++的常用工具栏 11
1.2.5 Visual C++应用程序向导 12
1.2.6程序调试方法 13
1.3 C++程序实例 14
1.3.1 Hello World程序实例 15
1.3.2创建简单的控制台程序 16
1.4小结 17
1.5习题 17
第2章 C++数据类型介绍(教学视频:50分钟) 19
2.1 C++基本数据类型 19
2.1.1常用的基本数据类型 19
2.1.2结构体 27
2.1.3联合体 29
2.2 C++数据的仓库——数组 30
2.2.1什么是数组 30
2.2.2初始化数组 32
2.2.3使用下标表示数据顺序 33
2.2.4使用二维数组装载数据 36
2.2.5使用字符数组保存字符串 40
2.3 C++常用运算符 42
2.3.1算术运算符 42
2.3.2逻辑运算符 45
2.3.3 C++程序实例 48
2.4小结 49
2.5习题 50
第3章 C++程序控制语句(教学视频:75分钟) 51
3.1 C++程序基本结构 51
3.1.1预处理 51
3.1.2主函数main 54
3.1.3输入/输出 56
3.2循环语句 57
3.2.1 while循环 57
3.2.2 do…while循环 59
3.2.3 for循环 61
3.2.4嵌套使用循环结构 62
3.3选择语句 64
3.3.1 if选择结构 64
3.3.2 if…else选择结构 65
3.3.3 switch选择结构 67
3.4输出控制语句 69
3.4.1常用输出控制符 69
3.4.2格式化数据输出实例 73
3.5小结 75
3.6习题 75
第4章 指针(教学视频:75分钟) 77
4.1指针与地址 77
4.1.1指针与地址的基本概念 77
4.1.2指针与地址的区别 78
4.2指针变量 78
4.2.1定义指针变量 78
4.2.2初始化指针变量 79
4.2.3指针与地址之间的转换 80
4.2.4引用指针变量 80
4.3数组与指针 81
4.3.1操作空指针 82
4.3.2操作一维数组指针 83
4.3.3操作字符数组指针 86
4.3.4操作字符串数组指针 90
4.3.5操作结构体指针 93
4.4函数与指针 98
4.4.1数组指针作为函数参数 99
4.4.2字符串指针作为函数参数 108
4.4.3函数返回值作为指针类型 111
4.5指针实例程序 115
4.6小结 117
4.7习题 117
第5章 C++功能的实现——函数(教学视频:47分钟) 118
5.1函数的基本概念 118
5.2如何自定义函数 118
5.2.1函数声明 119
5.2.2函数实现 120
5.3函数之间的参数传递及返回值 123
5.3.1函数形参 123
5.3.2函数实参 124
5.3.3函数返回值 124
5.3.4在函数之间传递参数实例 125
5.4函数调用 126
5.4.1函数的调用方式 126
5.4.2函数的嵌套调用 127
5.4.3递归函数 129
5.4.4函数的作用域 130
5.5内联函数 131
5.5.1定义内联函数 131
5.5.2调用内联函数 132
5.6小结 134
5.7习题 135
第6章 预处理机制(教学视频:47分钟) 136
6.1常用宏介绍 136
6.1.1定义宏define 136
6.1.2标识符定义宏typedef 138
6.2宏定义 140
6.2.1具有参数的宏定义 140
6.2.2无参数的宏定义 142
6.3包含相关文件 144
6.3.1包含头文件 144
6.3.2链接库文件 145
6.4条件预编译格式 153
6.4.1 #ifdef…#else…#endif格式 154
6.4.2 #ifndef…#else…#endif格式 156
6.4.3 #if…#else…#endif格式 157
6.5实例程序分析 159
6.6小结 163
6.7习题 163
第2篇 提高篇 166
第7章 类(教学视频:56分钟) 166
7.1 C++新特性 166
7.1.1封装 166
7.1.2抽象 168
7.1.3继承 169
7.1.4多态 173
7.2 C++类成员 176
7.2.1成员变量 176
7.2.2对象初始化 178
7.2.3复制对象(拷贝构造函数) 185
7.2.4 this指针 187
7.2.5自定义类实例 188
7.3创建类的指针实例对象 192
7.3.1创建类指针对象 192
7.3.2访问对象成员 192
7.3.3删除类指针对象 193
7.3.4对象的生存周期 193
7.3.5指针对象实例程序 194
7.4 C++类的成员函数 195
7.4.1定义成员函数原型 196
7.4.2实现成员函数功能 196
7.5小结 198
7.6习题 199
第8章 封装(教学视频:42分钟) 200
8.1封装成员 200
8.1.1设置成员访问控制 200
8.1.2数据成员 204
8.1.3函数声明 206
8.2访问类中的数据 207
8.2.1访问类中的私有成员 208
8.2.2友元函数 210
8.2.3引用实例对象 212
8.3 C++封装实例 215
8.4小结 217
8.5习题 217
第9章 C++功能的延续——继承(教学视频:58分钟) 219
9.1继承的相关知识点 219
9.1.1继承的基本概念 219
9.1.2继承的意义 221
9.1.3继承的实现 221
9.2基类和派生类 222
9.2.1基类 222
9.2.2派生类 223
9.3继承方式 224
9.3.1公共继承方式 224
9.3.2私有继承方式 225
9.3.3保护继承方式 226
9.4初始化数据成员 227
9.4.1基类和派生类的初始化顺序 227
9.4.2多重继承中的初始化顺序 228
9.4.3实例代码分析 230
9.5创建子类实例对象 232
9.5.1派生子类 232
9.5.2指定子类的继承方式 233
9.5.3创建子类对象 233
9.5.4删除子类对象 235
9.6解决继承中的成员函数重名问题 236
9.6.1成员函数重载 236
9.6.2成员函数覆盖 237
9.6.3成员函数隐藏 239
9.7实例程序分析 241
9.8小结 243
9.9习题 243
第10章 虚函数与多态性(教学视频:45分钟) 245
10.1虚函数 245
10.1.1静态联编 245
10.1.2动态联编 247
10.1.3虚基类 250
10.1.4虚析构函数 253
10.1.5虚函数实例程序 255
10.2抽象类 257
10.2.1纯虚函数 257
10.2.2创建抽象类指针对象 258
10.2.3抽象类派生新类 260
10.2.4实例分析 262
10.3多态性 266
10.3.1继承多态性接口 266
10.3.2实现多态性接口 267
10.4小结 269
10.5习题 269
第11章 运算符重载(教学视频:66分钟) 271
11.1 C++运算符 271
11.1.1 C++常用运算符 271
11.1.2运算符重载基础 272
11.1.3运算符重载的优点 272
11.2运算符重载为成员函数和友元函数 273
11.2.1运算符重载为成员函数 273
11.2.2运算符重载为友元函数 276
11.3单目运算符重载 278
11.3.1前置单目运算符 278
11.3.2后置单目运算符 281
11.3.3运算符小结 284
11.4双目运算符重载 284
11.4.1双目运算符重载函数 284
11.4.2实例分析 285
11.5赋值运算符重载 286
11.5.1重载new运算符 286
11.5.2重载delete运算符 288
11.6重载运算符++和--实例 289
11.7小结 290
11.8习题 291
第12章 C++输入/输出流(教学视频:70分钟) 291
12.1输入/输出流的使用准备 291
12.1.1相关头文件 291
12.1.2输入/输出流类 293
12.2输入流 296
12.2.1输入流读取运算符 296
12.2.2获取输入流 298
12.2.3实例程序分析 299
12.3输出流 300
12.3.1输出流插入运算符 300
12.3.2使用函数实现流输出 301
12.3.3实例程序分析 303
12.4格式化输入/输出流函数 305
12.4.1简介 305
12.4.2格式状态标志介绍 305
12.4.3显示小数点 308
12.4.4对齐方式 308
12.4.5设置填充字符 309
12.4.6设置输出宽度 310
12.4.7设置和清除格式标志 311
12.5文件输入/输出流 312
12.5.1创建文件输入/输出流对象 312
12.5.2打开文件 314
12.5.3格式化输出文件 315
12.5.4格式化输入文件 316
12.5.5文件输入/输出流实例分析 317
12.6实例程序分析 319
12.7小结 320
12.8习题 321
第13章 程序运行时的异常处理(教学视频:42分钟) 322
13.1异常处理机制基础 322
13.1.1异常处理机制 322
13.1.2使用C++异常处理结构 323
13.1.3简单实例程序 323
13.2异常处理步骤 325
13.2.1发现异常 325
13.2.2抛出异常 326
13.2.3捕获异常 326
13.2.4多次处理异常 326
13.3实例程序分析 327
13.4小结 328
13.5习题 329
第14章 C++数据库基础(教学视频:55分钟) 330
14.1数据库的基础知识 330
14.1.1使用ODBC开发数据库 330
14.1.2使用ADO开发数据库 331
14.1.3数据库相关操作小结 331
14.2使用ODBC开发数据库的操作方法 331
14.2.1创建数据库 331
14.2.2配置ODBC数据源 336
14.2.3与ODBC相关的C++类 338
14.2.4 ODBC小结 340
14.3使用ADO开发数据库的操作方法 341
14.3.1添加ADO控件 341
14.3.2导入ADO的动态链接库 343
14.3.3初始化ADO控件环境 343
14.3.4连接数据库 346
14.3.5操作数据库 346
14.3.6 ADO数据库开发实例 350
14.4小结 355
14.5习题 355
第3篇 综合实例篇 358
第15章 教学管理系统的C++实现(教学视频:67分钟) 358
15.1项目概述 358
15.1.1概述 358
15.1.2实例中的相关类 358
15.1.3实例程序的相关功能 359
15.2自定义类 360
15.2.1学生类 360
15.2.2教师类 360
15.2.3课程类 361
15.2.4文件管理类 361
15.2.5自定义类的继承关系 362
15.3实现自定义类 363
15.3.1新建C++头文件和实现文件 363
15.3.2实现类功能 367
15.4使用自定义类 376
15.4.1复制自定义类文件到工程目录 376
15.4.2包含类的头文件 377
15.4.3创建类实例对象 378
15.4.4调用对象成员完成相应功能 379
15.5制作个性化系统界面 379
15.5.1 Visual C++控件简介 379
15.5.2制作个性化的系统界面 379
15.6在控件消息响应函数中使用自定义类功能 385
15.6.1为控件添加消息响应函数 385
15.6.2为界面中的控件关联变量名 386
15.6.3在消息响应函数中调用类成员 387
15.7使用文件保存数据 391
15.7.1创建文件实例对象 391
15.7.2打开文件 391
15.7.3格式化读取文件 392
15.7.4格式化写入文件 393
15.7.5关闭文件 394
15.7.6实例程序 395
15.8小结 400
15.9习题 401