琐记(二):expected class-name before '{' token

《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了。

posted @ 2011-04-26 22:00  风抚弦  阅读(5632)  评论(0)    收藏  举报