您的位置:首页 > 编程语言 > C语言/C++

C++面向对象编程

2016-05-04 10:17 351 查看
类(class)是具有相同属性和行为的一组对象的集合,它是创建对象的模板。

较大的项目中,往往需要多个源程序文件,每个源程序文件称为一个编译单元。

C++语法要求,一个类的声明必须出现在所有使用该类的编译单元中。

通常一个项目至少划分为3类文件:

类声明文件(*.h文件)
类实现文件(*.cpp文件)
类使用文件(*.cpp文件)
采用这样的组织方式可以对不同的文件进行单独编写、编译,最后再连接。

同时可充分利用类的封装性,在调试、修改程序时只需对其中的某个类声明和实现进行修改,而其余部分不动。

#include <iostream>
using namespace std;

// 类声明,往往放在头文件中以.h为后缀
class RectangleArea
{
private:
float length, width, area;
public:
void SetData(float L, float W);
float ComputerArea();
void OutputArea();
};

// 类实现
void RectangleArea::SetData(float L, float W)
{
length = L;
width = W;
}

float RectangleArea::ComputerArea()
{
area = length * width;
return area;
}

void RectangleArea::OutputArea()
{
cout << "area = " << area << endl;
}

// 主函数
int main()
{
RectangleArea Rectangle;
Rectangle.SetData(8, 9);
Rectangle.ComputerArea();
Rectangle.OutputArea();
return 0;
}


面向对象的基本概念

抽象

找出事物的共性,并将其划分为一类,得到一个抽象的概念。数据抽象和行为抽象。

封装

对某段程序,只关心它的执行结果,而不关心实现过程以及过程中所用到的数据。

将属性和行为结合,并尽可能隐藏对象的内部细节。

消息

描述对象之间通信的机制,一个消息就是一个对象要求另一个对象实施某种操作的一个请求。

继承

在一个提取了一般性的类上,考虑到因抽象而被舍弃的一部分对象的特征,可以形成一个新的类。

这个类既具有前一个类的全部特征,又有自己的新特征,形成一种层次结构。

多态

对一个对象发出消息,由于接受对象的类型可能不同,所以会作出不同的反应。

这样一个消息产生不同的响应效果就叫多态。面向对象通过继承和重载两种机制实现多态。

泛型,反射,模板,容器,STL
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: