Моя структура классов выглядит так:
class MethodHelper : public QObject, public IMethodHelper {
public:
// Stuff
};
Теперь я получаю указатель на объект:
QObject* someObject = getMethodHelper();
Здесь я абсолютно уверен, что someObject
является типом MethodHelper. Я как-то хочу привести его к IMethodHelper. Как мне это сделать?
Мои нынешние мысли похожи на QObject -> MethodHelper -> IMethodHelper
, например:
QObject* someObject = getMethodHelper();
MethodHelper* myHelper = qobject_cast<MethodHelper*>(someObject);
IMethodHelper* myIHelper = dynamic_cast<IMethodHelper*>(myHelper);
есть ли потенциальный недостаток в моем подходе?