无法转换为超载功能'到QLabel *'?

时间:2013-06-19 19:46:37

标签: c++ qt casting stack-overflow

所以,我试图使用以下代码将对象传递给Qt中的函数,然后将其转换为QLabel以进行进一步处理(它是动画序列的一部分):

    void myAnimation(QObject* label)
{
    QLabel *lbl = qobject_cast<QLabel*>label;

//more code.....
}

然而,每当我尝试编译时,我都会遇到以下两个错误:

错误:C2440:'初始化':无法从'overloaded-function'转换为'QLabel *' 上下文不允许消除重载函数的歧义

错误:C2146:语法错误:缺少';'在标识符'label'之前

为什么我的代码不起作用?任何帮助表示赞赏。谢谢!

1 个答案:

答案 0 :(得分:2)

尝试:

QLabel *lbl = qobject_cast<QLabel*>(label);
//                                 ^     ^