![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
继承
doudouwa1234
这个作者很懒,什么都没留下…
展开
-
【C++】派生类对象初始化基类的引用
//派生类对象初始化基类的引用//引用是别名,但这个别名只能包含派生类对象中的由基类继承来的隐藏对象#include using namespace std;class B{public: B() { cout<<"B"<<endl; } void fun() { cout<<"B::fun()"<<endl; }private: int x;};cla原创 2015-05-12 21:33:19 · 5953 阅读 · 1 评论 -
【C++】正确使用虚析构函数
//正确使用虚析构函数//使用虚析构函数,当delete删除一个对象时,能确保析构函数正确执行(动态)#include using namespace std;class B{public: B() { cout<<"B"<<endl; } virtual void fun() { cout<<"B::fun()"<<endl; } virtual ~B()/原创 2015-05-12 21:36:03 · 716 阅读 · 0 评论 -
【C++】通过基类的指针变量访问派生类中由基类继承来的隐藏对象
//// 可以将一个派生类的对象的地址赋给其基类的指针变量,但只能通过这个指针访问派生类中由基类继承来的隐藏对象,//不能访问派生类中的新成员。同样也不能反过来做。#include using namespace std;class B{public: B() { cout<<"B"<<endl; } void fun() { cout<<"B::fun()"<<原创 2015-05-12 21:33:10 · 771 阅读 · 0 评论 -
【C++】继承派生中对象相互赋值情况
//继承派生中对象相互赋值情况//派生类的对象可以赋值给基类的对象,这时是把派生类对象中从对应基类中继承来的隐藏对象赋值给基类对象。//反过来不行,因为派生类的新成员无值可赋。#include using namespace std;class B{public: B() { cout<<"B"<<endl; } void fun() { cout<<"B::fu原创 2015-05-12 21:30:40 · 884 阅读 · 0 评论 -
【C++】探究类派生时构造函数的顺序
//探究类派生时构造函数的顺序//在派生类对象的创建中,首先是虚基类的构造函数并按它们声明的顺序构造。//第二批是非虚基类的构造函数按它们声明的顺序调用。//第三批是成员对象的构造函数。最后是派生类自己的构造函数被调用#include using namespace std;class B{public: B() { cout<<"B"<<endl; } int x;原创 2015-05-12 21:29:00 · 499 阅读 · 0 评论 -
【C++】子类在重写虚函数时,会覆盖父类的函数
//子类在重写虚函数时,会覆盖父类的函数#include using namespace std;class B{public: B() { cout<<"Create B!"<<endl; }public: virtual void fun() { cout<<"B::fun()"<<endl; } virtual void show() { cout<<原创 2015-05-12 21:39:24 · 1654 阅读 · 1 评论 -
【C++】纯虚函数的简单应用。
//纯虚函数的简单应用。#includeusing namespace std;class A{public: virtual void Eat() = 0; virtual void Sleep() = 0; virtual void Foot() = 0;};class P : public A{public: void Eat() { cout<<"P::E原创 2015-05-14 21:55:22 · 795 阅读 · 0 评论