私のコードに問題があります。コンパイラは、私が作成したすべてのCButtonポインタに対してこのエラーを表示し続けます。[Qt]: 'CButton'のタイプに名前がありません
/home/trafel/ドキュメント/Projects/C++/CCalc/ccalc.h:23: error : 'CButton' does not name a type
CButton *button_0;
^
CButtonクラスはQPushButtonから拡張されています。ここ はメインヘッダからのコードです:
#ifndef CCALC_H
#define CCALC_H
#include <QWidget>
#include <QMainWindow>
#include <QPushButton>
#include "clabel.h"
#include "cbutton.h"
class CCalc : public QMainWindow
{
Q_OBJECT
public:
CCalc();
~CCalc();
public slots:
void CPush(QString);
void CAction(QString);
private:
CButton *button_0;
CButton *button_1;
CButton *button_2;
CButton *button_3;
CButton *button_4;
CButton *button_5;
CButton *button_6;
CButton *button_7;
CButton *button_8;
CButton *button_9;
CButton *button_equal;
CButton *button_plus;
CButton *button_minus;
CButton *button_multiply;
CButton *button_divide;
CButton *button_power;
CButton *button_root;
CButton *button_leftParenthesis;
CButton *button_rightParenthesis;
CButton *button_return;
CButton *button_ce;
CLabel *label_input;
CLabel *label_output;
QMenu *menu_session;
QAction *session_new;
QAction *session_open;
QAction *session_save;
QAction *session_quit;
QMenu *menu_log;
QAction *log_inspect;
QMenu *menu_help;
QAction *help_help;
QAction *help_about;
};
#endif // CCALC_H
そして、これは、CButtonクラスヘッダーからです:
#ifndef CBUTTON_H
#define CBUTTON_H
#include <QPushButton>
#include "ccalc.h"
class CButton : public QPushButton
{
Q_OBJECT
public:
CButton(QWidget *parent);
~CButton();
QString getValue();
void setValue(QString string);
private:
QString value;
};
#endif // CBUTTON_H
私は何かを追加するのを忘れましたか?
'ccalc.h'には' cbutton.h'が含まれていますが、 'cbutton.h'には' ccalc.h'が含まれています。それは良い考えではありません:http://stackoverflow.com/questions/14909997/whyarent-my-include-guards-preventing-recursive-inclusion-and-multiple-symbol。 'cbutton.h'から' ccalc.h'のインクルードを削除するだけのようです。 –