c++期末复习知识点整理_第1页
c++期末复习知识点整理_第2页
c++期末复习知识点整理_第3页
c++期末复习知识点整理_第4页
全文预览已结束

下载本文档

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

文档简介

1、基本概念:1.c+堤在20世纪80年代初期由贝尔实验室设计的一种在c语言基础上增加了对(面向对象)程序设计支持的语言。1.1 nclude是 c+库文件。coutr; / 输入3 .一个c+程序由编译预处理指令,数据或数据结构定义和若干函数组成。4 .一个 c 语言程序可以包含若干函数,其中 main 表示主函数,每个函数的执 行必须从 main 开始。5 .c+将数据分为基本数据类型,派生类型,符合类型=t勾造类型,vc6.0不支持 bool 型6 .指数形式,e 或( e )后面必须是整数7 .c+不支持空字符常量 门是不合法,是合法;endl表示换行。8 .如果需要在字符串中出现双引号,

2、则必须用 表示。 例如: please pressf1to help9 .变量的默认类型为double10 .使用 const,define 表示定义标识符常量。11 .条件运算符nnum=(ab)? 10: 812 .size of是用于返回操作数所占的内存空间大小13 .break 用于结束 switch 循环或从一个循环跳出。 continue 用于结束本次循环 进入到一个循环中。14 .c+是一种面向对象的程序设计语言,它与面向过程设计方法的最大不同是 引入了“类和对象”的概念,而此时函数是构造“类”成员的一种手段。15 .函数调用时, 实参与形参的个数应相等, 类型应一致, 且按顺序

3、对应, 一一 传递数据16 .在c+中,允许在函数声明或定义时给一个或多个参数指定默认值,这样在调用时,可以不给出参数,而按指定的默认值进行工作。( 1 )函数既有原型声明又有定义时,默认参数只能在原型生命中指定。( 2 )当一个函数中需要有多个默认参数时,则形参分配中。默认参数应严格按照,从右至左逐次指定。( 3)函数调用时,按照从左到右,实参与形参相结合,当实参数目不足时,系统将以默认值对齐。( 4 )函数原型可多次声明,但一个参数的默认值只能指定一次。默认值可以是全局变量,全局常量,甚至是一个函数,但不能是局部变量。17 .内联函数:它把函数体的代码直接插入到调用处,将调用函数的方式转换

4、为顺序执行直接插入限制( 1 )不能有数组,不能有任何静态类型(2)不能有switch , for 等复杂语句 需要在函数类型前加inline(3)不能有递归18 .函数重载:c+允许多个同名的函数存在,但同名的各个函数的形参必须有区别使用函数重载,不仅方便记忆,更加完善了同一函数代码功能。19 .new和delete : c+钟,new和delete能有效直接地进行动态内存的分配和释放。( 1 )必须配对使用( 2 ) delete 必须用于先前指的 new(3)new 可以为数组分配内存,可以告诉 delete 有多少个元素20.引用变量,实质上是给已定义的变量取了个别名。引用与指针最大的

5、区别: 指针是一个变量, 可以把它再赋值指向别处地址, 而 引用一旦初始化后,某地址不会再改变注(1)定义引用时必须初始化,引用类型必须与初始化变量相同( 2)引用常量时,前面必须加const( 3)可以引用结构体,但不能引用数组。( 4)引用本身不是数据类型。21 .一个类总有两种特殊的成员函数, 构造函数和析构函数 构: 在创建对象时,使用给定的值将对象初始化。 析: 是用来释放一个对象, 在对象删除前用它来做一些内存释放等清理工作。22 .将一个已定义的对象所在的内存空间的内容依次拷贝到被初始化对象的内存空间中,这种仅将内存空间的内容拷贝的方式称为浅拷贝。必须自己定义一个拷贝构造函数,

6、在进行数值拷贝之前, 为指针类型的数据成员开辟一个对立的内存空间,是深拷贝。24 友元:除一个类的成员函数可以声明成另一个类的友元外,也可以将一个类声明成另一个类的友元, 称为友元类。 当一个类作为另一个类的友元时, 就意味着这个类的所有成员函数都是另一个类的友元成员函数。26 .this 是一个仅能被类的非静态函数所访问的特殊指针。对于静态成员函数来讲, 由于它是为所有对象所共享, 因此在静态成员函数中使用 this 指将无法确定 this 的具体指向, 所以在静态成员函数中不能使用 this指针27 .继承和派生派生类对象建立基类构派生类构派生类析基类析允许派生类继承多个基类,可使派生类拥

7、有多个基类特性除了类的多继承外,c+还允许一个基类有多个派生类(多重派生),以及从一个基类的派生类中进行多个层次派生32 赋值运算符的重载:( 1)赋值运算符不能重载为友元函数,只能重载为一个非静态成员函数( 2)赋值运算符重载函数是唯一的一个不能被继承的运算符函数33 什么叫时间产生的消息?在 windows 操作环境中,无论是系统产生的动作或是用户运行应用程序产生的动作,都称为事件产生的消息34 动态链接库动态链接库提供了一些特定结构的函数,能被应用程序在运行过程中装入和连接且多个程序可以共享同一个动态链接库,这样可以大大节省内存和磁盘空间,kernel32.dl用来处理存储器底层功能,任

8、务和资源管理等windows核心服务;gdi32.dll 用来提供图形设备接口,管理用户界面和图形绘制包括 windows 元文件,位图,设备描述表和字体user32.dll负责窗口的管理,包括消息,菜单,光标,计时器及其他与控制窗口显示相关的一些功能35mfcmfc把windows编程规范中的大多数内容圭装成为各种类,称为 mfc程序框架,它使程序员从复杂的编程中解脱出来,提高了编程的代码效率36vc中的mfc appwizard能够为用户快速,高效,自动地生成一些常用的标准程序结构和编程风格的应用程序, 他们被称为应用程序框架结构 (单文档,多文档,基本对话框)37 .由于这些应用程序还包

9、含了除源程序文件外的许多消息, 因此 vc 中常将它们称为工程或项目。另外, vc 是用文件夹来管理一个应用程序项目。且将项目名用作文件夹名。38 .mfcaw debug 和 release debug 有相应调试信息码r 没有,但代码经 过优化,运行速度提高。39 .项目工作区窗口: classview.resourceview.fileview40.object类是mfc提供的绝大多数类的基类42.框架窗口可分为两类:一类是应用程序主窗口,一类是文档窗口。45.控件的成员变量又称控件变量。分两种类型,一是用于操作的控件对象, 二是用于存取的数据变量。43 .怎样设置窗口样式。41.p15

10、9类向导44 .p172 消息映射代码框架 p175 创建和使用对话框 p187 有模式,无模式对话框 p189p193(1)(2)(3)28 虚基类:29 多态和虚函数30 纯虚函数和抽象类31 运算符重载23 静态成员 p92 96页。25 常类型 const填空题:1.字面常量。是指能直接从字面形式判别其类型的常量又称直接量。2用单引号将其括起来的字符称为字符常量。c+不支持字符常量。3 .#define 标识符常量行尾没有分号, #defone 定义的常量不是真正的标识符常量。c+编程中,标识符常量都用 const来定义而不使用#define4 。 枚举常量是在由关键字enum 指定的

11、枚举型中定义的。 enum 一次可以定义多个标识符常量,不像const和#define每次只定义一个,5 .cin 可以获得多个键盘的输入值, 提取运算符“” 可以连续写多个, 每个提取运算符后面跟一个获得输入值的变量或对象。6。输出流通过cout 可以输出一个整数,实数,字符及字符串。 cout 中的插入运算符“ ”可以连续写多个,每个后面可以跟一个要输出的常量,变量,转义序列符及表达式等。7 .格式算oct.dec和hex能分别将输入或输出的整数转换为八进制,十进制,十六进制8 .除法运算将小数部能去掉,而不是四舍五入。9 .自动转换是将数据类型按从低到高的顺序自动进行转换。10 . “”

12、将二进制每位求反。到1, 1到0,队进行异或操作,相同为 0,不 同为 111 . “? ”是c+中唯一的一个三目运算符。12 .若省略表达式e2,则默认白表达式e2的值被认为true13 .使用内联函数时需在函数的类型前面加上mline 关键字。14 .重载函数必须具有不同的参数个数或不同的参数类型。15 .使用关键字extern 声明的变量称为外部变量。16 .c+是用文件夹来管理一个应用程序项目的。且将项目名作为文件夹名,在 此文件夹下包含源程序代码文件,项目文件,及项目工作区文件等。17 .项目工作区窗口包含 3个标签页面分别是。classview侯页面),resource view(

13、资源页面)和file view(文件页面)18 .cobject类是mfc提供的绝大多数类的基类。19 .框架窗口可能为两类:一类是应用程序窗口。另一类是文档窗口。20 .用mfcappwizard创建单文档(sdi)或多文档(mdi)应用程序时,主窗口 类的源文件名能别是 mainfrm.h 和 mainfrm.opp.21 .控件的成员变量又称为控件变量,在 mfc 中,控件变量能为两种类型。一是用于操作的控件对象,二是用于存取的数据变量。22 .在对话框编辑器的控件工具栏中属于静态控件的有静态文本,组框和静态图片三种。23 静态图片控件还可以用来在对话框中形成一个水平或垂直蚀刻线。24

14、.常见的按钮有三种类型:按键按钮,单选按钮和复选框按钮。25按钮消息常见的只有两个:bn_clicked(单击按钮)和bn_dovbie_clickg双击按钮。26 默认时,旋转按钮控件的最小值是100,最大值是0.27旋转按钮控件的通知消息只有一个:udn_deltapos,是在当前控件的当前数值将要改变时向其父窗口发送的。28 .默认样式下的单选列表框一次只能选择一个项,多选列表框,一个选择几个项, 而扩展多选列表框允许用鼠标拖动或其他特殊组合键进行选择, 非选列表框,则不提供选择功能。29 组合框能为三类:简单组合框,下拉式组合框。下拉式列表框。30 组合框操作能为两大类:一类是对组合框

15、中的列表进行操作,另一类是对组合框中的编辑框进行操作。31 根据滚动条的走向,可能为垂直滚动条和水平滚动条。32 .滚动条控件的默认滚动范围是0 到 0.33 .滑动条控件是由滑动块和可选的刻度线组成的。34 用于时间和日期的控件和组件有3 个:日期时间拾取控件,日历控件,计时器。35 在常见的菜单系统中,最上面的一层水平排列的菜单称为顶层菜单,每一个顶层菜单项可以是一个简单的菜单命令。 也可以是下拉菜单。 在下拉菜单中的每一个菜单项也可是菜单命令或下拉菜单。这样一级一级下去可以构造出复杂的菜单系统。36 一个加速键就是一个按键或几个按键的组合,它用于激活特定的命令简答:1 .mfc dass

16、 wozowd对话框包含5个标签页面,他们各自的意义如下:(1) messape mapsg肖息映射):用来添加;删除和编程处理消息的成员函数(2) member bariobles(成员变量):添加或删除的控件相关联的成员变量。以便与控件进行数据交换。(3) 3) automation( 自动化);为支持自动化的类添加属性和方法.(4)active x events(activex事件):为activex控件添加触发事件的支持。(5) class info(类信息):有关项目中类的其他信息。2 .窗口样式通常有一般(以 ws_为前缀)和扩展(以 wsex为前缀)两种形式窗口样式既可以通过 m

17、fc.app wizard 来设置。也可以在主窗口或文档窗口类的pre create window函数中修改 createstruct构。或调用cwnd类的 成员函数。 modify styte 和 modifystyleex 来更改3 . 创建和使用对话框。 创建并使用一个对话框通常有两种方式: 一是直接创建一个基于对话框的应用程序, 二是在一个应用程序中添加并创建对话框类。 选择第二种方式时。 使用一个对话框的一般过程往往是: ( 1) 添加对话框资源( 2)设置对话框的属性(3 )添加和布局控件(4 )创建对话框类(5)添加对话框代码(6)在程序中调用对话框4 控件的创建方式:( 1)在

18、对话框模板中用编辑器指定空间。也就是说,将对话框看作控件的父窗口。(2)编程方式,即调用mfc相应控件类白员函数 create来创建。并在create 函数指定控件的父窗口指针。( 3 )控件编程创建方法是使用各自封装的类的create 成员来创建。它的最大优点, 就是能动态创建, 但他涉及的编程内容比较复杂。 且不能发挥对话框编辑器可视化的优点。 故在一般情况下都采用第一种方法。 即在对话框栏集中用编辑器指定控件5 .ddx和 ddvddx 将数据成员变量与对话类模板内的控件相连接。 这样就使得数据可以在控件之间很容易地传输。而ddv用于数据的校验。例如它能自动校验数据成员变量数值的范围。并发出相应的警告。6 文档序列化概念(名解)用户处理的数据往往需要存盘以作为永久备份。将文档类中的数据成员变量的值保存在磁盘文件中。或者将存储的文档文件中的数据读取到相应的成员变量中。这个过程称为序列化。7 .内联函数的概念:把函数体的代码直接插入到调用出。将调用函数的方式改为顺序执行直接插入的程序代码。 这样可以减少程序的执行时间。 但同时增加了代码的实际长

温馨提示

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

评论

0/150

提交评论