• 3211阅读
  • 2回复

继承问题 [复制链接]

上一主题 下一主题
离线bb4526872
 

只看楼主 倒序阅读 楼主  发表于: 2014-06-14
我写了一个父类是device
class Device
{
public:
    Device();
    virtual void paint(QPainter* painter);
}
子类Substation
#include "device.h"
class Substation :
    public Device
{
public:
    Substation(void);
        void paint(QPainter* painter);
}
然后写了一个QHash<QString,Device>
实例化了四个Substation加进去了,之后在调用QHash中的Substation的paint方法时发现调用的是父类Device中的方法,怎样才能让它去调用Substation的paint方法啊??求教!!
离线彩阳

只看该作者 1楼 发表于: 2014-06-14
QHash<QString,Device>是不对的,应该是:QHash<QString,Device*>,在堆上创建一个Substation实例,也没有什么性能损失。
上海Qt开发联盟,热忱地欢迎你的加入!
离线pxiao_xiao

只看该作者 2楼 发表于: 2014-06-15
转换有两种 转指针 转引用
快速回复
限100 字节
 
上一个 下一个