首先定义了一个父类BaseObject,定义了一个虚函数virtual BaseObject *getRowRecord();
class BaseObject
{
public:
BaseObject();
virtual BaseObject *getRowRecord();
};
然后定义了一个子类ElecObject,继承了父类BaseObject,并重写了getRowRecord
class ElecObject:public BaseObject
{
public:
ElecObject();
ElecObject *getRowRecord();
};
然后定义了一个QList<BaseObject>,放进了ElecObject
QList<BaseObject> *recordList=new QList<BaseObject>();
recordList->append(ElecObject);
添加断点观察参数如下图:
进行转化
QList<ElecObject>* m_list=(QList<ElecObject>*)recordList;
然后读取m_list中的对象,就出错了
ElecObject o=m_list.at(0);