C概念与简答
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
C++概念与简答
第一章绪论
1、请简述什么是面向对象的语言
(1)出发点:
更直接地描述客观世界中存在的事物(对象)以及它们之间的关系。
(2)特点:
①是高级语言。
②将客观事物看作具有属性和行为的对象。
③通过抽象找出同一类对象的共同属性和行为,形成类。
④通过类的继承与多态实现代码重用。
(3)优点:
使程序能够比较直接地反映问题域的本来面目,软件开发人员能够利用人类认识事物所采用的一般思维方法来进行软件开发。
2、面向对象的方法
(1)将数据及对数据的操作方法封装在一起,作为一个相互依存、不可分离的整体——对象。
(2)对同类型对象抽象出其共性,形成类。
(3)类通过一个简单的外部接口,与外界发生关系。
(4)对象与对象之间通过消息进行通信。
3、封装:把对象的属性和服务结合成一个独立的系统单元
4、继承对于软件复用有着重要意义,是面向对象技术能够提高软件开发效率的重要原因。
定义:特殊类的对象拥有其一般类的全部属性与服务,称作特殊类对一般类的继承。
5、多态性:同样一个接口,不同的数据有不同的状态
6、面向对象的软件工程(考察缩写匹配)
●面向对象的分析(OOA)意义:能够很好地映射客观事物。
●面向对象的设计(OOD)
●面向对象的编程(OOP)
●面向对象的测试(OOT)以对象的类作为基本测试单位
●面向对象的软件维护(OOSM)
7、程序的开发过程
(1)编辑:将源程序输入到计算机中,生成后缀为cpp的磁盘文件。
(2)编译:将程序的源代码转换为机器语言代码。
(3)连接:将多个源程序文件以及库中的某些文件连在一起,生成后缀为exe的可执行文件。
(4)运行调试
第二章C++简单程序设计
1、语言的最基本单位是字符:字符──>词──>语句──>函数──>程序。
2、字符集是构成C++语言的基本元素
3、词法记号是最小的词法单位
4、类型名的字节长度
类型名长度(字节)
bool1
char1
signed char1
unsigned char1
short(signed short)2
unsigned short2
int(signed int)4
unsigned int4
long(signed long)4
unsigned long4
float4
double8
long double8
5、所谓常量是指在程序运行的整个过程中其值始终不可改变的量,也就是直接使用符号(文字)表示的值。分为一般常量和符号常量两种
6、实数常量缺省为double型,如果后缀F(或f)可以使其成为float型
7、字符串型常量是用双引号括起来的一个或多个字符。(要和字符常量区分)
8、bool,值只能为true 或false
9、sizeof 运算符用来求“类型名”所指定的类型或“表达式”的结果类型所占的字节数
10、隐含转换,基本原则是将低类型数据转换为高类型数据
11、从流中获取数据的操作称为提取操作“>>”,向流中添加数据的操作称为插入操作“<<”。
12、cin用来处理标准输入,即键盘输入。cout用来处理标准输出,即屏幕输出。
cout << 表达式<< 表达式...
cin >> 表达式>> 表达式...
13、结构是由不同数据类型的数据组成的集合体。
第三章函数
1、函数的调用
●调用前先声明函数:
●若函数定义在调用点之前,则无需另外声明;
●若函数定义在调用点之后,则需要在调用函数前按如下形式声明函数原型:
⏹类型标识符被调用函数名(含类型说明的形参表);
●调用形式
⏹函数名(实参列表)
●嵌套调用
●函数可以嵌套调用,但不允许嵌套定义。
●递归调用
●函数直接或间接调用自身。
2、函数的参数传递
●在函数被调用时才分配形参的存储单元。(经常考选择题)
●实参可以是常量、变量或表达式。
●实参类型必须与形参相符。(经常考选择题)
●值传递是传递参数值,即单向传递。(经常考选择题)
●引用传递可以实现双向传递(经常考选择题)
●常引用作参数可以保障实参数据的安全
3、引用可以作为形参(作为形参不必初始化)
void swap(int &a, int &b) {...}
4、有缺省参数的形参必须在形参列表的最后,也就是说缺省形参值的右面不能有无缺省值的参数。因为调用时实参与形参的结合是从左向右的顺序。(要理解,考选择题)
int add(int x, int y = 5, int z = 6);//正确
int add(int x = 1, int y = 5, int z);//错误
int add(int x = 1, int y, int z = 6);//错误
5、函数重载:C++允许功能相近的函数在相同的作用域内以相同函数名声明,从而形成重载。方便使用,便于记忆。要么形参类型不同,要么形参个数不同
(不以形参名来区分,不以返回值来区分)
6、很多标准C++函数继承自标准C,头文件以c开头:cmath,cstdlib,cstdio,ctime
第四章类与对象
1、抽象的实现:通过类的声明。
2、类是具有相同属性和行为的一组对象的集合,它为属于该类的全部对象提供了统一的抽象描述,其内部包括属性和行为两个主要部分。
3、函数是将逻辑上相关的语句与数据封装,用于完成特定的功能。而类则是逻辑上相关的函数与数据封装,它是对所要处理的问题的描述。(非常重要的两句话)
4、类是一种用户自定义类型
5、在关键字private后面声明,只允许本类中的函数访问,而类外部的任何函数都不能访问。如果紧跟在类名称的后面声明私有成员,则关键字private可以省略。
6、类的对象是该类的某一特定实体,即类类型的变量。(想不到吧)
声明形式:
类名对象名;
例:Clock myClock;
类中成员互访:直接使用成员名
类外访问:使用“对象名.成员名”方式访问public属性的成员
7、在类中说明原型,可在类外给出函数体实现,并在函数名前使用类名加以限定。也可以直接在类中给出函数体,形成内联成员函数。
8、内联成员函数(爱考选择题)
为了提高运行时的效率,对于较简单的函数可以声明为内联形式。