私には2つのクラスがGame
あり、属性を使用しApButton
たいので、これら2つのフレンド関数を作成したいのですが、エラーが発生し続けます:ApButton
Game
`Game` does not name a type
apbutton.h
ゲームクラスに追加すべきではないことはわかっていますが、ゲームが使用するためApButton
(プッシュボタンから継承されたクラス)、追加する必要があります。この問題に対する他の解決策はありますか?
2 つのクラスのコードは次のとおりです。
#ifndef GAME_H
#define GAME_H
#include <QtGui>
#include <QWidget>
#include <apbutton.h> //I have to add this
#include <QHBoxLayout>
#include <QTimer>
#include <iostream>
#include <QMouseEvent>
using namespace std;
namespace Ui {
class Game;
}
friend class ApButton;
class Game : public QWidget
{
Q_OBJECT
public:
explicit Game(QWidget *parent = 0);
~Game();
QLabel *bomb_label();
private:
Ui::Game *ui;
ApButton **btn; //that's why I have to include apbutton.h
};
#endif // GAME_H
#ifndef APBUTTON_H
#define APBUTTON_H
#include <QPushButton>
#include <iostream>
#include <QMouseEvent>
#include <game.h>
using namespace std;
class ApButton : public QPushButton
{
Q_OBJECT
public:
explicit ApButton(QWidget *parent = 0);
void setRowCol(int _row,int _col);
void mousePressEvent(QMouseEvent *ev);
private:
string name;
int row;
int col;
Game g; //here is the problem!
};
#endif // APBUTTON_H