写在前面:

本篇文档是为了《C++面向对象程序设计》课程所写,包含了本课程考试可能会考的所有概念。当然,因为目的只是为了通过考试,所以我将这些概念已经尽量精简。如果你将下面的概念全部理解记住,那么期末考试的第一大题30分应该不难获得满分。

版权声明:

以下内容是我对这些知识点查阅资料后书写的理解,为个人的智力成果,未经许可,不可进行商用转载。

非商用转载请联系:yuhang.shang@qq.com

第一章 绪论

一、面向对象方法

1.是什么

一种能帮助人类解决问题的自然方法

2.作用

面向对象是把整个需求按照特点、功能划分,将这些存在共性的部分封装成类(类实例化后才是对象),创建了对象不是为了完成某一个步骤,而是描述某个事物在解决问题的步骤中的行为

二、结构化程序设计

1.思想

自顶向下,逐步求精,模块分解,功能抽象,自顶向下,分而治之

2.作用

有效地将一个复杂的软件系统分成许多容易控制和处理的子任务,这些子任务都是可以独立编程实验的子程序模块,每个子程序界面清晰,使用方便

三、面向对象程序设计

1.是什么

面向对象程序设计吸取了结构化程序设计的一切优点,又考虑到了现实世界与面向对象空间的关系,将数据与对数据的操作放在一起,当作一个整体处理。同时又采用数据抽象和信息隐藏技术,并且考虑不同类之间的可重用性。

2.对比结构化程序设计

结构化程序设计还是面向过程的程序设计,它把数据和过程分离成互相独立的实体。

对于不同的数据格式需要编写不同的程序,因此可重用性不好。

当数据和过程相互独立时,可能产生错误的程序调用正确的数据这种程序与数据调用错误的情况,对于程序员来说是沉重的负担

以上这些缺点会随着程序的规模增大而愈发难以控制

3.四大基本概念

对象

对象是实际存在的,可以是有形的,也可以是抽象的

对象是描述客观事物的一个实体,是构成系统的一个基本单位,一个对象由一组属性和对这组属性进行操作的服务构成。

类实例化后是对象

类是依照对象的共性,划分出来的

类是对象的抽象及描述,是具有共同属性和操作的多个对象的相似特性的统一描述体

消息

消息是对象间的通信和请求任务,要求某个对象执行其中某个功能,消息分为公有消息和私有消息

方法

方法是对象接收到消息时所执行的操作

4.四大特性

抽象性

抽象性是指将具有一致的属性和行为的对象抽象成类。一个类就是这样一种抽象,它反映了与对象有关的重要性质,而忽略其他一些无关内容。

封装性

封装就是把一组数据和这组数据有关的操作集合组装在一起,形成一个能动的实体(对象)

继承性

继承性是子类自动共享父类数据结构和方法的机制,这是类之间的一种关系。在定义和实现一个类的时候,可以在一个已经存在的类的基础之上来进行,把这个已经存在的类所定义的内容作为自己的内容,并加入若干新的内容。

多态性

不同的对象收到相同的消息时产生完全不同的行为

第二章 C++语言对C语言的扩充

一、C++语言中函数的新特性

  • 函数原型

  • 内联函数

  • 带默认参数的函数

  • 函数重载

  • 函数模板

第三章 类和对象

一、构造函数

构造函数是与类同名、没有返回值的特殊成员函数,可自动进行对象的初始化

二、析构函数

析构函数是在对象撤销时,释放该对象所占用的内存空间的函数。

一般在对象消亡时,系统将自动调用析构函数,执行一些在对象撤销前必须执行的清理任务

三、静态成员

静态成员是不管类中创建了多少个对象,静态成员只有一个副本,此副本被这个类的所有对象共享

静态成员分为静态数据成员静态数据函数

第四章 友元

一、友元定义

遵循一定规则而使对象以外的软件系统能够不经过消息传递方式而直接访问对象内封装的数据成员的技术方法便是友元。

二、友元函数

友元函数是一种说明在类定义体内的非成员函数。

三、友元成员

另一个类的成员函数可以作为某个类的友元,只是在声明友元函数是要加上成员函数所在的类名,称为友元成员。

四、友元类

某一个类可以是另一个类的友元,这样作为友元的类中的所有成员函数都可以访问声明其为友元类的类中的全部成员。

第五章 继承与派生

一、继承

二、派生

三、虚函数

第六章 多态性与虚函数

实验题

1.Tdate

P39

2.学生类

书上无

3.各种形状

P154

4.运算符重载

P132

5.文件读写

6.函数模板

P31

原文地址:http://www.cnblogs.com/Syhang/p/16908676.html

1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长! 2. 分享目的仅供大家学习和交流,请务用于商业用途! 3. 如果你也有好源码或者教程,可以到用户中心发布,分享有积分奖励和额外收入! 4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解! 5. 如有链接无法下载、失效或广告,请联系管理员处理! 6. 本站资源售价只是赞助,收取费用仅维持本站的日常运营所需! 7. 如遇到加密压缩包,默认解压密码为"gltf",如遇到无法解压的请联系管理员! 8. 因为资源和程序源码均为可复制品,所以不支持任何理由的退款兑现,请斟酌后支付下载 声明:如果标题没有注明"已测试"或者"测试可用"等字样的资源源码均未经过站长测试.特别注意没有标注的源码不保证任何可用性