(2) C++
文章平均质量分 54
云笔记
我要考研
展开
-
派生类的构造函数显示调用虚基类的构造函数
当调用派生类C的构造函数动态创建派生类对象时,只调用一次虚基类A的构造函数,\而派生类C的直接基类B1,B2(同时也是A的派生类)对虚基类A的构造函数的调用将被忽略。例子:#include using namespace std;class A{public: A(int x) { a = x; cout<<"A类构造函数"<<endl; }private:原创 2013-12-07 21:55:56 · 2186 阅读 · 0 评论 -
基类指针指向派生类对象
根据C++指针的定义,一种类型的指针不能指向另一种类型的变量。基类指针可以指向派生类的对象派生类指针不可以指向基类对象注意:即使将一个基类的指针指向一个派生类的对象,通过该指针也只能访问派生类中从基类继承来的共有成员,不能访问派生类中新增加的成员,\除非通过强制转换将基类指针转换为派生类指针例子:利用基类的指针指向其派生类的对象#include using namespa原创 2013-12-07 22:47:46 · 2289 阅读 · 0 评论 -
派生类成员函数对基类成员函数的覆盖
用派生类B中的成员函数Show(),对基类A中的成员函数Show()进行覆盖。例子:#include using namespace std;class A{public: void Show() { cout<<"A::Show()"<<endl; }};class B : public A{public: void Show() { cout<<"B::Show()原创 2013-12-05 22:28:21 · 3620 阅读 · 0 评论 -
派生类的构造函数和析构函数
如果需要对派生类新增的初始成员进行初始化,就必须对派生类添加新的构造函数。由于基类的构造函数和析构函数不能继承,因此,对继承类基类原有的数据成员的初始化,必须调用基类的构造函数来完成。 在定义派生类时需要解决两个问题:1.派生类的构造函数如何定义。2.派生类的构造函数中如何调用基类的构造函数。例子:#include using namespace原创 2013-12-05 22:50:44 · 991 阅读 · 0 评论 -
多继承
一个基类可以派生出多个派生类,同样,一个派生类可以继承多个基类。例子:#include using namespace std;class BaseA{public: void SetA(int x) { a = x;}//非构造函数protected: int a;};class BaseB{public: void SetB(int y) { b = y;}/原创 2013-12-05 23:25:37 · 818 阅读 · 0 评论