琐记(二):expected class-name before '{' token
时间:2011-04-26 来源:风抚弦
《C++ GUI Programming with Qt 4》书中的一个例子,即用QT Designer建立一个可伸展的对话框,一步步按书上来了结果出现如题错误。认真检查了一下源代码(防止ctrl+c出现问题),没问题。于是google,发现同种错误的人还不少,点开第一个就提到查看.ui文件,第二个提到看看父类是否包含进去了。问题出现的地方正是新建QDialog以及UI::sortDialog子类的地方:
#ifndef SORTDIALOG_H
#define SORTDIALOG_H
#include <QDialog>
#include "ui_sortdialog.h"
class SortDialog : public QDialog, public Ui::SortDialog
{
Q_OBJECT
public:
SortDialog(QWidget *parent = 0);
void setColumnRange(QChar first, QChar last);
};
#endif
显然,QDialog是没问题的,于是查看ui,打开后一眼就看见name为sortDialog,大小写错误,于是改之。之后再次编译发现有些变量未声明。于是老老实实查看UI,发现果然一堆name和源码不一致……改正之后,一切就OK了。
相关阅读 更多 +
排行榜 更多 +