![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C++整理07
崖高人远
这个作者很懒,什么都没留下…
展开
-
公有继承,私有继承,保护继承下访问父类和子类的区别
//公有继承,私有继承,保护继承下访问父类和子类的区别。#include using namespace std;//父类,基类class Parent{ private:int i1; protected:int i2; public:int i3;};//公有继承class Child1 : public Parent{public: void show()转载 2012-09-29 01:02:22 · 514 阅读 · 0 评论 -
继承、名字隐藏
#include using namespace std;//Peasant继承自Human,Human继承自CRE//基类,生物类class CRE{//成员变量private: int HP; //生命值 //这里曾把DEF写成DET int DEF; //防御 int ACT; //攻击public: //构造函数 CRE转载 2012-09-29 01:35:47 · 437 阅读 · 0 评论 -
polymorphism、名字隐藏,函数覆盖
#include using namespace std;class Human{private:public: //普通函数不具有多态性 void move() { cout << "moving moving" << endl; } //虚函数,具有多态性 virtual void attack() { cout << "attack" << endl; }转载 2012-10-02 15:26:14 · 336 阅读 · 0 评论 -
dynamic_cast
#include using namespace std;class A{private:public: virtual void show() { }};class B : public A{};class C : public A{};class D : public B{};int main(){//注意有new的语句,这种用法代表转载 2012-10-02 15:32:39 · 266 阅读 · 0 评论 -
polymorphism、过马路
#include #include #include using namespace std;//交通工具class V{private:public: //这里曾经把两个函数写成了声明 virtual void run() { } virtual void stop() { }};class Car : public V{private:publi转载 2012-10-02 15:05:29 · 634 阅读 · 0 评论 -
虚继承、多继承
#include using namespace std;class Human{public: Human() { cout << "Huamn()" << endl; }};//虚继承class Peasant : virtual public Human{public: Peasant() { cout << "Peasant()" << endl;转载 2012-10-02 08:13:53 · 259 阅读 · 0 评论 -
polymorphism、争霸
#include #include #include #include using namespace std;//抽象类class CRE{private:public: //纯虚函数 virtual string getName() = 0; virtual int getPH() = 0; virtual int getACT() = 0; virtual vo转载 2012-10-02 14:33:47 · 294 阅读 · 0 评论 -
vtalbe
#include #include using namespace std;class A{private:public: int x; virtual void show() { cout << "int A x = " << x << endl; }};class B : public A{private:public:转载 2012-10-05 21:30:58 · 325 阅读 · 0 评论 -
typeid
//typeid//用法待查阅手册#include #include using namespace std;class A{ public: virtual void show() {} };class B : public A{};class C : public A{};class D : public B{};void type(A* pa){ if(转载 2012-10-05 21:28:12 · 378 阅读 · 0 评论