今天写一下面向对象的一些知识吧,好给以后的孩子们学习提供帮助。
面向对象 = 对象 + 类 + 继承 + 消息。
类:class 类名
{
......//自定义成员
};
内联函数:在类说明体中定义的函数,或在类说明体外加上inline的函数。
内联的函数代码并不被相同类的对象所共享,因而增大了程序的内存开销。
访问权限:公有,私有,保护。
公有public:可以被程序中的任何代码访问。
私有private:可以被类本身的成员函数以及友元类的成员函数访问。
保护protected:可以被类本身的成员函数和友元类的成员函数,以及派生类的成员函数访问。
对象:对象可以是一般对象名,指针和数组,只能访问对应类的公有成员。
运算符:一般对象的成员用.;指针对象的成员用->。 a.x; p->x; (*p).x; a.sum();
构造函数:可重载,初始化类的数据成员,其名与类名相同,没有返回值,创建对象时调用。
析构函数:不可重载,即一个类有且仅有一个析构函数,其名在类名前加~,作用为释放对象占用的内存,对象消失时调用(new定义的对象只能delete才能消失)。
派生类:class 派生类名:继承方式 基类名
{
......//自定义成员
};
派生类继承了基类的全部非private数据成员和除了构造函数、析构函数以外的全部非private函数成员。
公有继承:基类的public和protected成员分别作为派生类的public和protected成员。
私有继承:基类的public和protected成员都以private成员属性出现在派生类中。
保护继承:基类的public和protected成员都以protected成员属性出现在派生类中。
面向对象 = 对象 + 类 + 继承 + 消息。
类:class 类名
{
......//自定义成员
};
内联函数:在类说明体中定义的函数,或在类说明体外加上inline的函数。
内联的函数代码并不被相同类的对象所共享,因而增大了程序的内存开销。
访问权限:公有,私有,保护。
公有public:可以被程序中的任何代码访问。
私有private:可以被类本身的成员函数以及友元类的成员函数访问。
保护protected:可以被类本身的成员函数和友元类的成员函数,以及派生类的成员函数访问。
对象:对象可以是一般对象名,指针和数组,只能访问对应类的公有成员。
运算符:一般对象的成员用.;指针对象的成员用->。 a.x; p->x; (*p).x; a.sum();
构造函数:可重载,初始化类的数据成员,其名与类名相同,没有返回值,创建对象时调用。
析构函数:不可重载,即一个类有且仅有一个析构函数,其名在类名前加~,作用为释放对象占用的内存,对象消失时调用(new定义的对象只能delete才能消失)。
派生类:class 派生类名:继承方式 基类名
{
......//自定义成员
};
派生类继承了基类的全部非private数据成员和除了构造函数、析构函数以外的全部非private函数成员。
公有继承:基类的public和protected成员分别作为派生类的public和protected成员。
私有继承:基类的public和protected成员都以private成员属性出现在派生类中。
保护继承:基类的public和protected成员都以protected成员属性出现在派生类中。