琐记(二):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了。

你可能感兴趣的:(expect)