C ++构建错误:类没有命名类型

时间:2016-11-26 09:18:08

标签: c++ class build compiler-errors include

我重新安排了一些代码,现在我收到了以下错误:

g++ main.cpp myframe.cpp `wx-config --cxxflags --libs std` -o main
myframe.cpp:5:1: error: ‘Myframe’ does not name a type

我很确定错误与包含有关,而不是错误的代码

以下是源文件(仅限相关部分):

main.cpp中:

#include "main.h"
#include "myframe.h"

IMPLEMENT_APP(MyApp)

bool MyApp::OnInit(){  
    Myframe *menu = new Myframe(wxT("Application"));
    menu->Show(true);
    return true;
};

main.h:

#include <wx/wx.h>

class MyApp : public wxApp
{
  public:
    virtual bool OnInit();
};

myframe.cpp:

#include "main.h"

Myframe::Myframe(const wxString& title) 
/// ^ ERROR
       : wxFrame(NULL, wxID_ANY, title, wxDefaultPosition, wxSize(300, 300))
{
  ...
}

myframe.h:

#include <wx/wx.h>
#include <wx/menu.h>

class Myframe : public wxFrame
{
public:
    Myframe(const wxString& title);

    ...
};

...(function definitions,event table and enums)

1 个答案:

答案 0 :(得分:1)

您可以将#include <myframe.h>添加到“myframe.cpp”文件中。 因为“myframe.cpp”文件中没有Myframe的定义。