在java里面,如果Class Son是Class Father的子类,那么假如创建了一个Son s的
实例,那么可以用instanceof运算符来知道s是不是Son类或者Father类的实例。
C++里面,没有instanceof这个运算符。查下了貌似也
没有类似instanceof功能的函数。
QT里面的话,貌似可以通过继承
QObject来得到类似功能,小弟不才···继承自QObject后,代码一直报错。
所以
求助大家了。
代码如下,伪代码
部分就是测试s是不是Son或者Father的实例的,不会写,求补完。
- class Father {
- public:
- Father(){fatherInt =2;}
- int fatherInt;
- };
- class Son:public Father{
- public:
- Son(){sonInt = 1;}
- int sonInt;
- };
- int main(int argc, char *argv[])
- {
- QApplication a(argc, argv);
- MainWindow w;
- w.show();
- Son *s = new Son();
- qDebug()<<s->fatherInt;
- if (s是Son类的实例){
- qDebug()<<"S is instance of Class Son";
- }
- if (s是Father类的实例){
- qDebug()<<"S is instance of Class Father";
- }
- return a.exec();
- }