C++工作笔记-对继承的进一步认识
程序员文章站
2022-07-13 21:58:25
...
这篇博文将说明我对继承的进一步理解。
比如在图形碰撞的时候,如果能让他继承一个类,那个类设置一个flag,就可以对不同的图形进行不同的碰撞分析,那么这里就可以用父类指针,去指向子类,然后读取子类里面和父类相关的数据成员与函数。
这里我写一个例子:
代码如下:
#include <iostream>
using namespace std;
class MyBase{
public:
int getMyValue(){ return m_myValue; }
void setMyValue(int myValue){ m_myValue = myValue; }
private:
int m_myValue;
};
class MyClass:public MyBase{
public:
void printf(){ cout << "MyValue:" << MyBase::getMyValue() << endl; }
};
void main(){
MyClass *myClass1 = new MyClass;
MyClass *myClass2 = new MyClass;
MyClass *myClass3 = new MyClass;
myClass1->setMyValue(1);
myClass2->setMyValue(2);
myClass3->setMyValue(3);
MyBase *mybase = myClass1;
cout << "mybase.MyValue:" << mybase->getMyValue() << endl;
mybase = myClass2;
cout << "mybase.MyValue:" << mybase->getMyValue() << endl;
mybase = myClass3;
cout << "mybase.MyValue:" << mybase->getMyValue() << endl;
getchar();
}
运行截图如下:
推荐阅读
-
C++工作笔记-对二级指针的进一步理解(获取调用者的地址)
-
Qt工作笔记-对QImage的进一步认识(关于α通道)
-
Qt工作笔记-对QXmlStreamReader的进一步认识(读取XML)
-
Qt工作笔记-对QObject::connect函数进一步认识(重载)
-
C++工作笔记-对结构体的进一步认识
-
Qt工作笔记-qmake和uic(对Qt底层的进一步认识)
-
Qt|C++工作笔记-对虚函数的进一步认识(关键是Qt中如何正确使用,达到想要的效果)
-
Qt工作笔记-对QXmlStreamWriter进一步的认识(写复杂的XML文件)
-
C++工作笔记-对友元函数的进一步理解
-
C语言工作笔记-对函数指针的进一步认识(与回调函数结合使用,并且对比C++的回调)