出现这个错误有两种情况
一、当写成员函数忘记写返回值类型的时候也会报这个错
二、由于两个CPP相互都相互包含了对方的头文件造成的,比如:
当mainwindow.cpp、configdialog.cpp两个文件,分别包含了对方的头文件,并且分别又在自己的类中生命了对象,即:
mainwindow.cpp
#include "configdialog.h"
class MainWindow {
ConfigDialog *configDialog;
};
configdialog.cpp
#include "mainwindow.h"
class ConfigDialog {
MainWindow *mainWindow;
};
解决方法是,在生命对象的类名称前追加关键字“class”,即修改如下:
mainwindow.cpp
#include "configdialog.h"
class MainWindow {
class ConfigDialog *configDialog;
};
configdialog.cpp
#include "mainwindow.h"
class ConfigDialog {
class MainWindow *mainWindow;
};

本文介绍了两种常见的编译错误原因及解决方法。一是忘记指定成员函数的返回类型;二是因相互包含头文件导致的问题。通过在声明对象的类名前添加'class'关键字可以有效避免此类错误。
5886

被折叠的 条评论
为什么被折叠?



