不能包含mainwindow.h

时间:2018-10-30 16:09:09

标签: c++ qt

在其他头文件(在controller.h中)包含mainwindow.h(在我的项目中称为viewwindow.h)时出错。 Controller.h位于文件夹Controller中。

我在viewwindow.h中遇到的错误:

  1. C2143:语法错误:缺少';'在“ *”之前
  2. C4430:缺少类型说明符-假定为int。注意:C ++不支持default-int
  3. C2238:';'之前的意外令牌

他们都指向第ControllerClass *pController;

如果这是一个愚蠢的问题,请帮助我并粉碎那个讨厌的按钮。我应得的。

viewwindow.h

#pragma once
#include <QMainWindow>
#include "Controller/controllerclass.h"

namespace Ui {
class ViewWindow;
}

class ViewWindow : public QMainWindow
{
    Q_OBJECT

public:
    explicit ViewWindow(QWidget *parent = nullptr);
    ~ViewWindow();

private slots:
    void on_ExitAction_triggered();

private:

    // Main UI
    Ui::ViewWindow  *ui;

    // Controller sends user input to EditorFacade class
    ControllerClass *pController;
};

viewwindow.cpp

#include "viewwindow.h"
#include "ui_viewwindow.h"

ViewWindow::ViewWindow(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::ViewWindow)
{
    ui->setupUi(this);

    pController = new ControllerClass();
}

ViewWindow::~ViewWindow()
{
    delete pController;
    delete ui;
}

void ViewWindow::on_ExitAction_triggered()
{
    QApplication::quit();
}

controllerclass.h

#pragma once
#include "viewwindow.h"

class ControllerClass;
class ControllerClass
{
public:

    ControllerClass();

};

controller.cpp

#include "controllerclass.h"

ControllerClass::ControllerClass()
{

}

0 个答案:

没有答案