欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

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++工作笔记-对继承的进一步认识

相关标签: C++