ISO C++ forbids declaration of * with no type


error:ISO C++forbids declaration of'XXXX'with no typeこのエラーは、一般的に2つのCPPが互いに相手のヘッダファイルを含んでいるため、例えばmainwindow.cpp、configdialog.cppの2つのファイルは、それぞれ相手のヘッダファイルを含み、それぞれ自分のクラスにオブジェクト、すなわちmainwindowを生命させた.cpp
    
    
    
    
  1. #include "configdialog.h"  
  2.  
  3. class MainWindow  
  4. {  
  5.  
  6.     ConfigDialog *configDialog;  
  7.  
  8. };  
  9.  
  10. configdialog.cpp  
  11.  
  12. #include "mainwindow.h"  
  13.  
  14. class ConfigDialog  
  15. {  
  16.  
  17.     MainWindow *mainWindow;  
  18.  
  19. }; 

解決策は,生命オブジェクトのクラス名の前にキーワード「class」を追加することであり,mainwindow.cpp
   
   
   
   
  1. #include "configdialog.h"  
  2.  
  3. class MainWindow  
  4. {  
  5.  
  6.     class ConfigDialog *configDialog;  
  7.  
  8. };  
  9.  
  10. configdialog.cpp  
  11.  
  12. #include "mainwindow.h"  
  13.  
  14. class ConfigDialog  
  15. {  
  16.  
  17.     class MainWindow *mainWindow;  
  18.  
  19. };