抽象
数据抽象
功能抽象
即抽象出对某些东西的共性,比如说人的名字,性别,年龄,人的行为,吃饭,走路,工作学习之类。用C++的函数来表达。对同一个研究对象,由于研究的问题侧重点不同,也可能形成不同的抽象结果。
封装
class Circle
{
public:Circle(double r = 0);void set_r(double r = 0);double area();
private:double radious;double pai = 3.14;
};
比如说一个抽象出的圆的定义:
首先用class 来进行封装。class就是类的定义。
(类和对象就是抽象和具体的关系)
封装中的参数:
1、有三种关键字:private protected public //这些个关键字从出现开始到下一个关键字为止失效
public: //类的使用者只能使用public这个成员
这些关键字的意义:让这些数据的成员不能被调用只能通过函数与其产生一定的联系。
(调用方法: 对象.类中函数 )
封装中重要的函数:
构造函数:
1、不带返回值
2、函数命名与本类的类名相同
3、系统提供的这个构造函数是不带参的,并且是空的
Point(int x=0, int y=0):m_x(x),m_y(y)
{cout<<"Point(int )" <<endl;
}
复制构造函数:
Point(const Point &other):m_x(other.m_x),m_y(other.m_y){cout<<"&Point" <<endl;}
析构函数:
--> ~函数名
(析构函数不能传参数) //不能被重载
~Point(){cout<<"~Point" <<endl;}
函数后面的“:” 代表对对象的初始化 ,与在程序中效果 相同 但初始化效率更快。