qt中出现out-of-line definition of 'Widget' does not match any declaration in 'Widget'问题的解决

Qt中出现out-of-line definition of 'Widget' does not match any declaration in 'Widget'问题的解决

1.简述

在将Qt4项目程序转移到Qt5编程环境中时,常常会出现以下的错误

在这里插入图片描述

  • 最主要的问题是显示未定义Widget类

2.解决方法

  • 解决方法是将Widget类的默认声明添加进入工程文件

    • 在.pro的项目文件中添加如下默认声明后保存

    • greaterThan(QT_MAJOR_VERSION, 4): QT += widgets
      
  • 附加问题(某些Qt4老项目程序可能没有这问题)
    在这里插入图片描述

    • 解决 - 将头文件改成如下所示

      • //在main.cpp头文件中将头文件修改如下
        #include <QApplication>
        
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章