c ++中的多重定义错误

时间:2010-07-04 11:24:07

标签: c++

当我尝试运行c ++代码时,我收到以下错误

mainwindow.h

class MainWindow
{


  public:
     MainWindow();
    ~MainWindow();
     method();
};

mainwindow.cpp

#include mainwindow.h
MainWindow::MainWindow(){
   //some code here

}

MainWindow::~MainWindow(){
  //some code here

}
MainWindow::method(){
  //some code here

}

当我从eclipse cdt编译它时,我得到了错误,说明了MainWindow::method()的多个定义。 这是正确的方法还是我做错了什么。 请问有谁可以帮我做什么?

1 个答案:

答案 0 :(得分:3)

您似乎在多个cpp中包含了标题,并且它没有防范多个包含的保护,例如pragma once

#ifndef MainWindow_h 
#define MainWindow_h
class MainWindow
{


  public:
     MainWindow();
    ~MainWindow();
     method();
};
#endif