c++复习题纲13级_第1页
c++复习题纲13级_第2页
c++复习题纲13级_第3页
c++复习题纲13级_第4页
c++复习题纲13级_第5页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第 1 章 绪论 1.1 计算机程序设计语言的发展 计算机程序设计语言是计算机可以识别的语言, 。 。 。供计算机阅读和执行。 程序是指令的集合。 指令是计算机可以识别的命令。 由计算机硬件系统可以识别的二进制指令组成的语言称为机器语言。 面向对象的编程语言将客观事物看作具有属性和行为的对象,通过抽象找出同一类对 象的共同属性和行为。 通过类的继承与多态实现代码重用 计算机内部信息可以分为哪两类?参看习题 1.2 面向对象的方法 结构化程序设计的思路是:自顶向下,逐步求精;其程序结构是按功能划分为若干个 基本模块,每个模块内部均是顺序、选择、和循环三种基本结构组成。 面向对象方法中的对象,是系统中用来描述客观事物的一个实体,它是用来构成系统 的一个基本单位。对象由一组属性和行为构成。 面向对象方法中的“类”是具有相同属性和服务的一组对象的集合。 封装:把对象的属性和行为结合成一个独立的系统单元。尽可能隐蔽对象的内部细节。 继承:特殊类的对象拥有其一般类的全部属性与服务,称作特殊类对一般类的继承。 多态:指在一般类中定义的属性或行为,被特殊类继承之后,可以具有不同的数据类 型或表现出不同的行为。 不同进制之间数据的转换。 习题 15、7 第 2 章 C+简单程序设计 2.1C+语言概述 C+中标识符的构成规则及识别(合法与非法)P22 所谓常量是指在程序运行的整个过程中其值始终不可改变的量,除了用文字表示常量 外,也可以为常量命名,这就是符号常量;在程序的执行过程中其值可以变化的量称 为变量,变量是需要用名字来标识的。 2.2 基本数据类型和表达式 各种运算符的计算或混合运算(不含位运算)习题 2-8 +i 与 i+区别,参看习题 2-20 强制类型转换 23 数据的输入和输出 在 C+中,将数据从一个对象到另一个对象的流动抽象为“流” 2.4 算法的基本控制结构 算法的基本控制结构有 3 种:顺序结构、选择结构和循环结构。 if ,ifelse 两个简单语句及嵌套,else 是与其前离其最近且尚未和 else 配对的 if 进行 匹配 swith 语句跳出通过 break 来完成 循环结构(while , do。 。 。while,for)其中 while 与 do。 。 。while 都是当 while 后的 表达式值为真时,进行循环。 (注意条件填空) ;三种循环的相互转,阅读程序写结果, 或程序填空,例 2-6,2-7,2-8,2-9 Break 语句出现在 switch 或循环语句中,使程序从循环体和 switch 语句中跳出,继续 执行逻辑上的下一条语句 continue 语句可以出现在循环体中,其作用是结束本次循环,接着开始判断决定是否 继续执行下一次循环。 break 与 continue 的区别? 结构体成员的访问方式: 指针-成员名或结构体变量成员名或*指针成员名要灵 活运用出现在填空、判断、选择,不会让你写程序 第 3 章 函数 3.1 函数的定义与使用 函数的三种形式:定义、声明、调用分别有几个部分组成,怎么使用? 例 3-1 函数可以直接或间接的调用自身,称为递归调用 函数不可以递归定义,但可以递归调用。 递归的过程分为递推和回归两个过程 参看习题 3-13 函数的参数传递(引用方式)参见例 3-11,3-12 3.3 带默认形参值的函数 默认形参值必须按从右向左的顺序声明,在相同的作用域内默认形参值的说明应该保 持一致,但如果在不同的作用域内,允许说明不同的默认形参(阅读程序写结果或选 择)参见课件 函数重载的形式,函数声明、定义、调用参见例 3-16 add() ,习题 3-6 程序填空 C+调用函数的几种形式 在面向对象的程序设计中,函数是功能抽象的基本单位 内联函数及其特点参看习题 3-4 第 4 章 4.1 面向对象程序设计的基本特点 在面向对象的设计中,对一个问题的抽象应该包括两个方面:数据抽象和行为抽象。 4.2 类和对象 类成员的访问控制属性可以有三种:公有,保护和私有或写 public、protected 和 private 私有成员只能被本类成员函数访问。公有类型成员定义类的外部接口 如何声明类、定义类、实现类。参看 习题 4-11 矩形输入长宽,成员函数输出长宽, 面积 4.3 构造函数和析构函数 构造函数的作用是在对象被创建时利用特定的值构造对象,将对象初始化为一个特定 的状态,构造函数在对象被创建的时候被自动执行,与类同名,可以重载。 拷贝构造函数的作用是使用已经存在的对象,去初始化同类的一个新对象。其形参是 本类对象的引用。在以下三种情况下被调用: 1) 当用类的一个对象去初始化另一个对象 2) 如果函数的形参是类的对象,调用函数时,进行形参和实参的结合; 3) 如果函数的返回值是类的对象,函数执行完成返回调用者时。 4) 参看习题 4-6 析构函数的作用,用来完成对象被删除前的一些清理工作在对象生存期结束的时刻被 自动调用,不接受任何参数。 4.4 类的组合 含内嵌对象的类的构造函数的执行顺序: 1) 调用内嵌对象的构造函数,调用顺序,按照内嵌对象在组合类定义中出现的顺序; 2) 执行本类的构造函数 组合类的构造函数向内嵌对象的构造函数传递参数。参见例 4-4 第 5 章 C+程序的结构 5.1 标识符的作用于与可见性 具有块作用域的变量也成为局部变量;具有文件作用于的变量也称为全局变量。 5.2 对象的生存期 静态生存期和动态生存期,阅读程序写结果。参见例 5-2 及第五章补充例题 5.3 类的静态成员 参看习题 5-5、5-7 如何定义静态数据成员及声明、定义、调用静态函数成员 类属性是描述类的所有对象共同特征的一个数据项,用静态数据成员来实现,具有静 态生存期,对于任何对象实例,类属性值是相同的。 静态成员函数可以直接访问该类的静态数据和函数成员,而访问非静态数据成员必 须通过参数传递方式得到对象名,然后通过对象名来访问。 非静态函数成员可以直接访问类的非静态数据成员,非静态成员函数要访问类的静 态数据成员只能采用非内联函数且其函数体的定义与静态数据成员在同一源文件中的 形式。参见页例 5-5 5.4 友元 友元关系提供了不同类或对象的成员函数之间、类的成员函数与一般函数之间进行数 据共享的机制;友元有友元函数和友元类两种实现方式。 一个类的友元函数可以在它的函数体中通过对象名访问类的私有和保护成员。参看习 题 5-14Boat,Car 程序填空 会求两点之间距离,程序填空,补充习题和例 5-6 友元关系是不能传递的;有缘关系是单向的;友元关系是不被继承的。 第 6 章 数组、指针与字符串 6.1 数组 数组是具有一定顺序关系的若干对象的集合体;数组名是一个常量,代表着数组元素 在内存中的起始地址。数组的使用过程中应注意: 1) 数组元素的下标表达式可以是任意合法的算术表达式,其结果必须为整型数; 2) 数组元素的下标值不得超过声明时所确定的上下界。 6.2 指针 指针变量是用于存放内存单元地址的,C+中提供的两个与地址相关的运算符是“*” 和“&” 。 “*”和“&”出现在声明语句中和执行语句中含义不同, 1) “&”出现变量声明语句中位于被声明的变量的左边时,表示声明的是引用; 类的非静态 数据成员 类的静态数 据成员 类的非静态 成员函数 类的静态成 员函数 2) “&”出现在赋值号的右端作为一元运算符时表示取对象的地址。 3) “*”出现在声明语句中,在被声明的变量名之前时,表示声明的是指针; 4) “*”出现在执行语句中或声明语句的初值表达式中作为一元运算符时,表示访问 指针所指对象的内容。 指针必须初始化后才能使用参看习题 6-17 指针变量的关系运算有两种等于和不等。 访问对象的公有成员函数的不同方式,参看 例 6-13 指针型常量和指向整型常量的指针声明的不同 参看 习题 6-15 如何声明对象数组?对象数组如何调用成员函数参看 li6-3 move()函数调用 第 7 章继承与派生 7.1 类的继承与派生 一个派生类可以同时有多个基类,这种情况称为多继承,派生类只有一个直接基类的 情况称为単继承。 类的继承方式有三种分别是:public、protected 和 private。参看习题 7-1 当类的继承方式为公有继承时,基类的公用和保护成员的访问属性在派生类中保 持不变,而基类的私有成员不可直接访问。 当类的继承方式为私有继承时,基类中的公用和保护成员的已私有成员身份出现 在派生类中,而基类的私有成员不可直接访问。 当类的继承方式为私有继承时,基类中的公用和保护成员的已保护成员身份出现 在派生类中,而基类的私有成员不可直接访问。 面向对象的继承和派生机制,主要目的是实现代码的重用和扩充。 7.3 类型兼容规则 类型兼容规则是指在需要基类对象的任何地方,都可以使用共有派生类对象来代替, 类型兼容规则中所指的替代包括以下的情况: 1) 派生类的对象可以赋值给基类对象; 2) 派生类的对象可以初始化基类的引用; 3) 派生类对象的地址可以赋值给指向基类的指针。 7.4 派生类的构造和析构函数 派生类的构造和析构函数调用顺序,参看习题 7-10 一个包含内嵌对象成员的派生类构造函数的执行次序如下:参看课件 1)调用基类构造函数,调用顺序按照它们被继承时声明的顺序; 2)调用内嵌对象的构造函数,调用顺序按照它们在类中声明的顺序; 3)派生类的构造函数体中的内容。 7.5 派生类成员的标识与访问 在没有虚函数的情况下,如果派生类中声明了与基类成员函数名同名的新函数,即使 函数的参数表不同,从基类继承的同名函数的所有重载形式也都会被隐藏。参见 P228 例 7-7 虚基类解决的是什么情况下的二义性问题,参见 p232 例 7-8 第 8 章多态性 8.1 多态性概述 绑定是指计算机程序自身彼此关联的过程。绑定在编译阶段完成的情况称为静态绑定, 在程序运行阶段完成的情况成为动态绑定。 什么是多态?多态的特点、作用、形式 同样的消息被不同类型的对象接收时导致完全不同的行为。 函数重载是多态的形式。 函数重载和运算符重载及虚函数是 C+多态的主要方式。 对类的特定成员函数的再抽象。 8.2 运算符重载 运算符重载是对已有的运算赋予多重含义,使同一各运算符作用于不同类型的数据时 导致不同的行为。 运算符重载有两种形式:重载为类的非静态成员函数和重载为非成员函数,运算符重 载的关键字为 operator 8.3 虚函数 运行过程的多态需要满足三个条件:一是类之间满足类型兼容规则,二是要声明虚函 数,三是要由成员函数来调用或者是通过指针、引用来访问虚函数。参见例 8-4 虚函数作用是什

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论