标题：面向对象程序设计：VisualC++
图书信息
出版社: 清华大学出版社; 第1版 (2003年2月1日)
平装: 412页
正文语种: 简体中文
开本: 16
ISBN: 9787302062868
条形码: 9787302062868
尺寸: 25.6 x 18.4 x 1.8 cm
重量: 581 g
内容简介
《面向对象程序设计:Visual C++》系统地介绍了c++语言的基本知识。全书在介绍c++语言基础的基础上，重点介绍面向对象技术在该语言中的应用。其中着重介绍了数据类型和表达式、流程控制语句、函数、数组、结构体、指针和引用、类、类的成员、继承性、多态性等等。
《面向对象程序设计:Visual C++》是作者总结多年教学和编程的实践经验编写而成的，力求以浅显的语言讲解晦涩难懂的语法规则，配以大量的图解和例题，力争做到深入浅出，详略得当，以适合各种层次的读者。在每一章的最后指出该章　的重点和难点，便于读者在学习时有的放矢。全书习题丰富，难度适中，以利于读者消化所学的知识。
《面向对象程序设计:Visual C++》可作为理、工科院校计算机专业的语言基础课的教材和教学参考书，也可作为理、工科院校非计算机专业c++课程的教材和教学参考书，还可以作为编程爱好者及其他自学者的参考书。
目录
第1章  C++的基本知识1
1.1  数据类型1
1.1.1  数据类型1
1.1.2  关键字1
1.1.3  标识符、标点符号、分隔符2
1.1.4  基本数据类型3
1.1.5  常量4
1.1.6  变量7
1.2  运算符和表达式8
1.2.1  基本运算符9
1.2.2  表达式15
1.3  简单的输入/输出19
1.3.1  输出流：cout20
1.3.2  输入流：cin23
1.3.3  printf() , scanf()25
小结及思考与练习题28
第2章  流程控制语句32
2.1  C++的语句和程序结构32
2.1.1  C++语言的语句32
2.1.2  程序的三种基本结构34
2.2  分支结构语句35
2.2.1  条件语句35
2.2.2  条件运算符“？：”39
2.3.3  switch语句40
2.3  循环结构语句43
2.3.1  while()语句44
2.3.2  do…while()语句45
2.3.3  for()语句46
2.4  控制执行顺序的语句48
2.4.1  break语句49
2.4.2  continue语句49
2.4.3  goto语句50
2.4.4  exit()和abort()函数51
2.5  综合应用举例52
小结及思考与练习题56
第3章  函数和编译预处理59
3.1  函数的定义和调用59
3.1.1  函数概述59
3.1.2  函数定义60
3.1.3  函数调用63
3.2  函数的重载65
3.3  内联函数66
3.4  函数的原型说明与值调用67
3.4.1  函数的原型说明67
3.4.2  函数的值调用69
3.5  函数的嵌套调用和递归调用70
3.5.1  函数的嵌套调用70
3.5.2  函数的递归调用72
3.6  作用域和存储类型76
3.6.1  作用域76
3.6.2  存储类型80
3.7  参数特殊的函数83
3.7.1  具有默认参数值的函数84
3.7.2  参数个数可变的函数85
3.8  编译预处理87
3.8.1  “文件包含”处理87
3.8.2  宏定义89
3.8.3  条件编译93
3.9  程序的多文件组织96
3.9.1  内部函数和外部函数96
3.9.2  多文件组织的编译和连接97
小结及思考与练习题97
第4章  数组101
4.1  数组的定义和使用101
4.1.1  一维数组的定义和使用101
4.1.2  多维数组的定义和使用105
4.1.3  数组和函数110
4.2  字符数组114
4.2.1  字符数组的定义及初始化114
4.2.2  字符数组的使用115
4.3  字符串处理函数118
小结及思考与练习题120
第5章  结构体、共用体和枚举类型124
5.1  结构体124
5.1.1  结构体类型的说明124
5.1.2  定义结构体类型的变量125
5.1.3  结构体类型变量的使用126
5.1.4  结构体数组129
5.1.5  结构体类型的静态成员131
5.1.6  位域132
5.2  共用体134
5.3  枚举类型135
5.3.1  枚举类型及枚举类型变量135
5.3.2  枚举类型变量的使用136
小结及思考与练习题138
第6章  指针和引用140
6.1  基本知识140
6.1.1  地址和指针140
6.1.2  指针变量141
6.1.3  指针变量可执行的运算143
6.3.2  结构体类型的指针148
6.2  指针和数组148
6.2.1  用指针访问数组元素149
6.2.2  指针和字符串153
6.3  指针数组和多级指针156
6.3.1  指针数组156
6.3.2  指向数组的指针157
6.3.3  多级指针160
6.4  指针与函数161
6.4.1  指针作为函数的参数161
6.4.2  返回类型为指针的函数167
6.4.3  带参数的main()函数170
6.4.4  函数指针171
6.5  动态分配内存空间176
6.6  引用181
6.6.1  引用类型变量的定义和使用181
6.6.2  引用和函数184
6.7  其他类型的指针188
6.7.1  void指针188
6.7.2  const类型指针190
6.8  类型定义192
6.9  简单链表及其应用193
6.9.1  链表的基本概念193
6.9.2  链表构建与操作194
小结及思考与练习题203
第7章  面向对象程序设计208
7.1  面向对象思想的产生历程及其内涵208
7.7.1  面向对象思想产生的必要性208
7.1.2  面向对象的内涵210
7.2  面向对象程序设计210
7.2.1  结构化程序设计211
7.2.2  面向对象程序设计212
7.2.3  面向对象程序设计语言213
思考题215
第8章  面向对象基本概念及其特点216
8.1  对象216
8.1.1  对象的定义216
8.1.2  对象的属性和状态217
8.1.3  对象的行为218
8.2  类218
8.3  面向对象系统的特点219
8.3.1  封装219
8.3.2  继承220
8.3.3  多态220
思考题222
第9章  类及对象的封装性223
9.1  类223
9.1.1  类的定义223
9.1.2  类的构成225
9.2  类的使用226
9.2.1  对象的创建226
9.2.2  对象的使用227
9.2.3  对象数组和对象指针229
9.2.4  *this指针230
9.2.5  类实现数据的封装231
小结及思考与练习题233
第10章  类的成员237
10.1  类的成员函数的定义和调用237
10.1.1  成员函数的定义237
10.1.2  成员函数的调用238
10.2  成员函数的重载239
10.3  构造函数241
10.3.1  构造函数的定义242
10.3.2  构造函数和对象的初始化242
10.3.3  构造函数的重载244
10.3.4  默认构造函数和具有默认参数值的构造函数246
10.3.5  构造函数的两类特殊用途248
10.4  析构函数254
10.5  对象成员257
10.6  const对象和const成员函数260
10.6.1  const对象260
10.6.2  const成员函数262
10.6.3  const成员数据263
10.7  友元264
10.7.1  友元函数265
10.7.2  友元成员函数267
10.7.3  友元类268
10.8  静态成员270
10.8.1  静态成员数据270
10.8.2  静态成员函数273
10.9  调用构造函数及析构函数小结276
小结及思考与练习题277
第11章  继承283
11.1  继承283
11.1.1  基本概念283
11.1.2  单一继承284
11.1.3  多重继承288
11.2  基类的初始化289
11.3  继承中的几个问题294
11.3.1  访问类型的调整294
11.3.2  冲突296
11.3.3  成员覆盖298
11.3.4  赋值兼容规则300
11.4  虚基类301
11.4.1  虚基类的概念301
11.4.2  虚基类的初始化303
小结及思考与练习题305
第12章  虚函数和多态性310
12.1  多态性310
12.2  虚函数的定义和使用310
12.2.1  为什么要引入虚函数310
12.2.2  虚函数的定义与使用312
12.2.3  虚函数与函数重载315
12.2.4  虚析构函数与基类的构造函数调用虚函数317
12.3  纯虚函数和抽象类319
小结及思考与练习题326
第13章  运算符重载330
13.1  运算符重载330
13.1.1  基本概念和方法330
13.1.2  单目运算符重载331
13.1.3  二目运算符重载333
13.2  几个特殊运算符的重载337
13.2.1  “++”和“——”运算符的重载337
13.2.2  赋值运算符的重载339
13.2.3  数组下标运算符“[ ]”的重载341
13.2.4  函数调用运算符“()”的重载343
13.2.5  new和delete运算符的重载344
13.3  类型转换函数346
小结及思考与练习题348
第14章  模板351
14.1  模板的定义351
14.2  函数模板352
14.2.1  函数模板的定义352
14.2.2  重载模板函数354
14.3  类模板356
14.3.1  类模板的定义356
14.3.2  模板类的实例化357
14.3.3  模板对象作为函数模板的形参359
14.3.4  类模板的派生360
小结及思考与练习题362
第15章  异常处理363
15.1  基本概念363
15.2  异常的实现364
15.3  异常处理程序367
15.4  多路捕获370
15.5  使用异常的方法372
15.5.1  异常枚举372
15.5.2  异常类派生373
15.6  标准库异常层次374
小结及思考与练习题374
第16章  输入/输出流376
16.1  流376
16.1.1  输入/输出流的特点376
16.1.2  流库的类层次结构377
16.2  输出流379
16.2.1  使用预定义插入运算符输出380
16.2.2  使用成员函数put()输出一个字符381
16.2.3  使用成员函数write()输出一串字符381
16.2.4  重载插入符输出新的数据类型382
16.3  输入流383
16.3.1  使用预定义提取运算符输入384
16.3.2  使用成员函数get()或getline()输入字符序列384
16.3.3  使用成员函数read()输入一串字符386
16.3.4  重载提取符输入新的数据类型386
16.4  格式化输入/输出387
16.4.1  使用ios类成员函数进行格式控制387
16.4.2  使用流操纵算子进行格式化控制390
16.5  文件流391
16.5.1  C++文件概述391
16.5.2  文件的打开与关闭392
16.5.3  文本文件的读/写394
16.5.4  二进制文件的读/写396
16.6  字符串流398
16.6.1  ostrstream类流398
16.6.2  istrstream类流399
小结及思考与练习题400
附录A  Visual C++ 6.0基本操作404
附录B  ASCII码表408
附录C  常用的库函数409
参考文献413