运行环境是mandriva Linux,之前QT4.2下编译没问题,前几天Linux更新把QT升级到了4.5,然后就出现问题了。
测试的ui和源码参照<<C++ GUI QT4编程(第二版)>>里的Go to Cell Dialog,编译时出现如下问题:
main.cpp:11: 错误:‘GoToCellDialog’不是‘Ui’的成员
main.cpp:11: 错误:expected `;' before ‘ui’
main.cpp:13: 错误:‘ui’在此作用域中尚未声明
make: *** [main.o] 错误 1
我打开ui_gotocelldialog.h看过,发现里面的类定义变掉了,不是class Ui::GoTOCellDialog而是变成了class Ui_GoTOCellDialog。如果强行修改这个.h文件把_换成::则编译时再次发生错误
In file included from main.cpp:4:
ui_gotocelldialog.h:28: 错误:‘Ui’未声明
ui_gotocelldialog.h:29: 错误:expected unqualified-id before ‘{’ token
make: *** [main.o] 错误 1
由于本人只是QT的新手,这个问题发生后让我很纠结,暂时无法继续自学下去。恳求各位大虾出谋划策下,在此先拜谢了。