C++面向对象程序设计简介

简介: C++面向对象程序设计简介

一、面向过程和面向对象的区别。


面向过程就是分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步实现,使用的时候一个一个依次调用就可以了。 面向对象是把构成问题事务分解成各个对象,建立对象的目的不是为了完成一个步骤,而是为了描叙某个事物在整个解决问题的步骤中的行为


二、面向过程和面向对象的特征。


面向过程是把过程作为编程的思路,如程序流程图,但是面向对象是把实体当作对象,如自行车是一个实体,就是一个对象,它有自己的属性,但是它可以派生除别的类,如变速自行车,除了有自行车的特点外,还有变速这个特点,其实面向对象就是把显示中的一个事务当作一类东西,这类东西具有某些特性,但是它可以派生,就形成具有某个特点的对象,就是派生类


三、面向对象的基本特征:封装性,继承性,多态性(抽象性)。


1)抽象


数据的抽象是对数据进行实例分析,抽取其共同性质的结果。如: “学生”对象,先对一些学生实例进行分析,确定他们的共同特性或主要特性(姓名、性别、年龄、专业等),忽略不同点或次要的 引不起兴趣的那些特性(长相差异、性格差异等)。


2 )封装


将数据结构以及作用于数据结构上的操作组成一个实体,把数据的 表示方式及操作细节隐藏起来,用户通过接口对数据进行操作。这样,用户就只知道操作接口对该数据进行操作,而不知道内部是如何做的以及如何表示的—数据的封装。


【例如】银行帐户的抽象与封装

分析:

用户关心的问题:存款、取款、转帐、查询、修改密码 数据结构:帐号、余额、利息、密码等


3)继承


所表达的是对象类之间相互的关系。这种关系使的某一类可以继 承另外一个类的特征和能力(数据和操作)。


【例如】现实社会中继承的实例 由此可知:


可实现和增强代码的可重用性——通过继承基类的属性、方法实现;


在创建新的派生类时,只要指明了派生类是由哪个基类派生的便可 自动继承基类的属性和方法。


修改或扩充程序功能时不必修改原代码(增加新代码即可)。


(二)继承的几个名词:


基类(父类)


派生类(子类)


直接基类及间接基类


(三)继承的分类


单继承


多继承


4)多态


多态性:是指不同的对象在收到相同的消息时产生多种不同的行为。


多态性的例子。 “+”:2+3=5


设复数a=2+3i b=3+4i 则:a+b=5+7i


(运算符重载)


max()函数的调用:


max(a,b)——求二个数之间的最大数; max(a,b,c) ——求三个数之间的最大数;

max(*p,n)——求n个数的最大数。


(函数重载)


相关文章
|
1月前
|
存储 C++ 开发者
C++程序设计基础:构建稳固的编程基石
C++程序设计基础:构建稳固的编程基石
23 1
|
1月前
|
Unix 编译器 C语言
c++简介
c++简介
23 0
|
1天前
|
C++
面向对象的C++题目以及解法2
面向对象的C++题目以及解法2
10 1
|
12天前
|
存储 人工智能 机器人
【C++面向对象】C++图书管理系统 (源码)【独一无二】
【C++面向对象】C++图书管理系统 (源码)【独一无二】
|
17天前
|
存储 人工智能 BI
【C++面向对象】C++银行卡管理系统(源码+论文)【独一无二】
【C++面向对象】C++银行卡管理系统(源码+论文)【独一无二】
|
存储 算法 程序员
【C/C++ 线性表 简介】C/C++中的线性表探索:从标准库到自定义实现
【C/C++ 线性表 简介】C/C++中的线性表探索:从标准库到自定义实现
24 0
|
25天前
|
算法 IDE Java
【软件设计师备考 专题 】面向对象程序设计语言:C++、Java、Visual Basic和Visual C++
【软件设计师备考 专题 】面向对象程序设计语言:C++、Java、Visual Basic和Visual C++
39 0
|
25天前
|
算法 安全 编译器
C++:模版初阶 | STL简介
C++:模版初阶 | STL简介
|
1月前
|
算法 安全 Linux
【C++】—— STL简介(了解)
【C++】—— STL简介(了解)
|
1月前
|
编译器 程序员 C语言
C++系列一: C++简介
C++系列一: C++简介