c++期末复习知识点.docx
《c++期末复习知识点.docx》由会员分享,可在线阅读,更多相关《c++期末复习知识点.docx(10页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、1. Visual C+的基本概念(i)标识符:以字母、数字、下划线组成的字符序列,第一个字符必须是字母或下划线。不能与关键字同名,且不含空格标点符号和其他字符,同时区分大小写。例:不正确的:enum、int、2b、a+3、a-3、#include等均不是正确的标识符正确的:_32、include Int a_3 abc(2)数据类型:字符型(char, 1)、整型(int , 4)、实型(float, 4),双精度(double, 8),无值型(void, 0)、 布尔型(bool, 1)int之前还可以用unsigned、signed short、long修饰,表示不同字节的整数类型cha
2、r之前还可以用unsigned signed修饰(表达式的数据类型以整个表达式中最高的数据类型为准)例:T+2、T+2、18/3+5.、18+5.0/2,注意常用数学函数的返回值类型(3)常量:(字面常量、标识符常量)整型常量一一有十进制、八进制(以。开头)、十六进制(0X(x)开头)三种形式;实型常量一一有普通和科学计数法两种形式。科学计数法时,e的前面必须要有数字,且在e之后必须是整数;(注意2.5f和2.5的区别,注意2.0和2.)字符型常量一一必须以单引号引起来,转义序列以开始,用数值描述时有ddd和 xhh两种形式,即只能是一个八进制或十六进制的数,取值范围在0255,且十六进制 必
3、须以x开头。字符串型常量一一用双引号括起来,存储时系统默认在结尾添加“0”。区分sizeof(字 符串)和strlen(字符串)的值。标识符常量的定义#define a4常变量的定义const int a=4;注意标识符常量和常变量两者的异同点(4)变量:需遵循“先定义后使用,先赋值再操作”的原那么。(5)算术运算符:(详见书,几个需要注意的如下)运算符:两边都是整型,那么做整除运算(去尾取整),有一个是实型,那么是真正的 商。“%”运算符:取余,其两边都必须是整型数。(6)关系运算符:关系成立,表达式结果为整数1,否那么为整数0。(7)逻辑运算符:!&|非。为真,用整数1表示,。为假。注意逻
4、辑运算表达式计算时的优化问题(短路特 性)。(8) sizeof ()运算符:用于计算某一操作数类型的字节数。(9)赋值表达式:=左边只能是变量,a+或a-不能放在二左边二两边数据类型不同时,以左边的数据类型为准二的优先级仅高于逗号运算符复合的赋值表达式中,将复合的赋值运算符右边的局部看作一个整体进行处理(10)逗号表达式: 运算符重载为普通函数的方式和重载为友元函数的方式类似,但要注意类中数据成 员的访问权限。 双目运算符重载成友元函数,需要两个形参,第一个对应左操作数,第二个对应右 操作数;重载成成员函数,需要一个形参,当前对象为左操作数,形参为右操作数单目运算符重载成友元函数,需要一个形
5、参;重载成成员函数,不需形参 要求掌握能重载的运算符有+、-、+、-、*、/、+=、-二、*二、/=、 (插入运算 符)、 (提取运算符)重载+、-时注意如何区分前置和后置。 运算符重载的规那么: sizeof不允许重载=-()只能重载成成员函数 只能重载成友元函数运算符重载不能改变运算符的操作数个数、优先级别、结合性(10)继承和派生单一继承、多重继承 公有派生、私有派生、保护派生(11)抽象类:不能创立对象,但可以作为基类构造或析构函数为protected的类 含有纯虚函数的类(12)优先规那么(支配规那么)和赋值兼容性优先规那么(支配规那么):派生类新增成员名与基类成员名相同时,假设未用
6、类名限定, 派生类定义的成员名优于基类中的同名成员 赋值兼容性: 派生类对象可以赋给基类对象,反之不可可将派生类对象的指针赋给基类型的指针变量 派生类对象可以初始化基类型的引用通过基类指针(引用)只能访问从相应基类中继承来的成员,不允许访问派生 类中的新增成员。(13)虚基类:注意虚基类构造函数的调用(14)多态性:编译时多态性(函数重载或运算符重载)和运行时多态性(虚函数一类中的 非静态成员函数可定义为虚函数)运行时的多态性触发的条件:基类指针(引用)指向派生类,并通过基类指针(引用) 调用虚函数,触发多态性。补充:1 .C+程序从上机到得到结果的几个操作步骤依次是编译、运行、编辑、连接。2
7、 .能作为C+程序的基本单位是函数。3 .在C+语言中,int型数据在内存中的存储形式是补码。4 .从左往右依次计算各表达式,以最后二个表达式的值作为整仝逗号表达式的值。(11)强制类型转换:(type)表达式 或 type (表达式)(12)优先级顺序:单目优于双目,双目优于三目,在此基础上,算术一位移(插入、提取)一关系一位一 逻辑一条件一赋值一逗号。(优先级的序号越小,其优先级越高)(13)自增(+),自减(-)运算符谁在前先做谁,只能对变量进行+或-。a+或a-的结果可理解为表达式,+a或-a的结果可理解为变量。常与逻辑运算的短路特性合在一起考查(14)数据的输入和输出:C+语言本身没
8、有输入输出语句。(P36)在输入数据的过程中,如果输入的一行仅仅是一个回车时,cin把该键作为空格处 理,仍等待输入数据。需要注意的是,用cin输入数据时,实际输入数据的个数、类型及顺序,必须与dn中列举的变量dn中列举的变量对应,否那么输入的数据不准确列如:int b;char c=,x,;cinbc;coutbycendl;假设输入堂,那么输出的是二那么变量b的值为0,而变量c没有获得输入的值,并使后面的cin无法正确提取数 据。(15)C+语言用非零值表示逻辑“真”值。2. Visual C+的基本语句(顺序、选择、循环)(1)单项选择语句:if (表达式) S表达式的值非0 (成立),
9、那么执行S;否那么,跳过S直接执行后继的语句。(2)二选一语句:,if (表达式)S1; elseS2; *表达式可以是符合C+语法规那么的任一表达式*表达式非0 (成立),执行S1;否那么执行S2.(3)嵌套的条件语句:if (表达式1)S1;else if (表达式2)S2; else S; 注意:else和谁配对?与最靠近它的且没有else与之配对的if进行配对(4)条件运算符:?:表达式1?表达式2:表达式3表达式1成立,以表达式2的值为整个表达式的结果,否那么以表达式3的值为整个表 达式的结果(5)开关语句switch语句:switch (表达式)(case 常量表达式LSI; br
10、eak;case 常量表达式2:S2; break;default: S3;)例:int a=7;switch(a%5)case O:couta+;case 1 :cout+a;case 2:couta一;case 3:cout-a;default :couta;输出的结果是755.你知道是为什么吗?int k=0;char c=A;do switch (c+) 输出的结果是4,但是你猜猜如果把c+改成+c结果会是什么呢,没错就是2.啦啦啦case A :k+;break;case B :k一;case C :k+=2;break;case D :k=k%2;continue;case E :
11、k=k*10;break;default:k=k/3;k+;while(c,G);coutkendl;表达式和常量表达式的值只能是整型、字符型或枚举型。* 根据表达式的值选一个对应的常量表达式后的语句执行,直到碰到break或switch 的结束default的位置没有规定,但需考虑是否要添加break* if和switch使用的注意:前者可以表示连续的条件区间也可以表示离散的条件, 而后者只能表示离散的条件,因此,任一个switch结构可以转换成if结构,但反之不 行。当用switch表示连续的条件时需设法将连续的条件转换成离散的形式。(6)循环语句:while (表达式)s执行过程:表达式
12、非0做循环体S。循环体有可能一次也不被执行。doSwhile(表达式);(分号不可以忘)执行过程:先执行循环体S,再判断表达式的值,非0继续循环。循环体至少做一次 for (; ;表达式3S执行过程:表达式1、2、3均可省略,假设省略,需在合适的位置进行处理*三种循环可以相互转换,不管用哪种循环,一定要把握好循环条件(什么样的情况 下循环)、循环体(循环做什么)*不能出现死循环!(7) break continue 语句break一一跳出整个循环,不再循环(结束该层的循环)continue结束本次循环,进入下一次循环3.函数(1) C+源程序、目标程序、可执行程序的后缀名。(2)任何一个C+程
13、序必须有一个且只能有一个main函数。(3)函数要先定义后使用,假设先使用后定义需在使用前加函数原型说组(绿皮方P32.772) 列如:intf!1);此原型声明即是对的。int f2(int=l,int);lkb原型声明即是错的。(4)函数不能嵌套定义,但可以嵌套调用(递归)。(5)形式参数和实际参数:在函数定义中,在参数表中一一列出的参数称为形式参数(对 于函数体来说,它们是量、要在函数体中进行处理的量,无需再重新定义);在函 数调用时依次列举的参数称为实际参数(传递给函数实际处理的值或量)。即当调用函 数时,实参和形参各占一个独立的存储单元。(6)函数的返回值:每个函数都可以有retur
14、n语句。假设函数无返回值,那么可不写return语句,或直接写“return;,假设函数有返回值,那么必 须有return语句。C+语言的函数中,return语句中的表达式的类型可以与函数的类型不一 致。一个return只能返回一个值,同一时刻只有一个return语句有效。(7)函数的调用:。各函数之间即允许直接递归调用,也允许间接递归调用)语句调用、表达式调用函数调用时,实参和形参之间有传值、传址、引用三种不同的数据传递形式(8)标识符的作用域:* 这里的标识符其实包括了变量和常量,所谓作用域那么说明了标识符能被使用的范 围。* 作用域分为块作用域、文件作用域、函数原型作用域、函数作用域、类
15、作用域和命 名空间作用域块作用域:在块内说明的标识符,其作用域始于标识符的说明处,止于块的结尾处。 只能在该块内引用。* 文件作用域:在所有函数之外定义的变量称为全局变量。全局变量(标识符)的作用 域。从定义位置开始到该源程序文件结束。也可通过extern将其作用域外延到包含它 的工程中的其它文件。* 同一块内不允许出现同名的局部变量,不同块作用域内允许,当两个块重叠的情况 下出现局部变量重名,那么遵循“县官不如现管”的原那么。* 局部变量和全局变量重名时,也遵循“县官不如现管”的原那么。此时假设想在同名的 局部变量作用域内强制访问该全局变量可通过域作用符(:)访问(9)变量的存储类型:aut
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- c+ 期末 复习 知识点
限制150内