c++ - 无法从 'overloaded-function' 转换为 'QLabel *'?

标签 c++ qt casting stack-overflow

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

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

//more code.....
}

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

错误:C2440:“正在初始化”:无法从“重载函数”转换为“QLabel *” 上下文不允许消除重载函数的歧义

错误:C2146:语法错误:缺少“;”在标识符“标签”之前

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

最佳答案

尝试:

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

关于c++ - 无法从 'overloaded-function' 转换为 'QLabel *'?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17200015/

相关文章:

C++ 要求所有声明都有类型说明符

c++ - 如何在 LLVM 模块中插入函数

c++ - 指针和引用 + 重载运算符

c++ - 指针数据类型变量如何包含对象?

c++ - 在 C++ 中复制具有指向自身的自指针的类的构造函数?

qt - pyqt:试图了解 QAbstractDataModel 和 QTreeView 的插入行

qt - 从 Ubuntu 上的 GTK+ 开始

Angular 9 变量未在 View 中更新

android - 如何以编程方式将 Android 屏幕/应用程序镜像到屏幕?

转换为无符号字符