2017-02-27 18 views
1

fehlt Ich habe den folgenden Code:vtkStandardNewMacro gibt C4430 Fehler: Typspezifizierer

#include <vtkInteractorStyleTrackballCamera.h> 

class InteractorStyle : public vtkInteractorStyleTrackballCamera 
{ 
    public: 
     static InteractorStyle* New() {}; 
     vtkTypeMacro(InteractorStyle, vtkInteractorStyleTrackballCamera); 
     InteractorStyle() { 
      cout << "test"; 
     } 
     virtual void OnLeftButtonDown(); 

     virtual void OnKeyPress(); 

    private: 

}; 
vtkStandardNewMacro(InteractorStyle); //error here 

void InteractorStyle::OnLeftButtonDown() 
{ 
    std::cout << "test"; 
    // Forward events 
    vtkInteractorStyleTrackballCamera::OnLeftButtonDown(); 
}; 
void InteractorStyle::OnKeyPress() 
{ 
    // Get the keypress 
    vtkRenderWindowInteractor *rwi = this->Interactor; 
    std::string key = rwi->GetKeySym(); 

    // Output the key that was pressed 
    std::cout << "Pressed " << key << std::endl; 
    // Forward events 
    vtkInteractorStyleTrackballCamera::OnKeyPress(); 
}; 

Obwohl folge ich der tutorial, es gibt mir immer unter Fehler für vtkStandardNewMacro(InteractorStyle);:

Fehler C4430: fehlend Typspezifizierer - int angenommen. Hinweis: C++ unterstützt nicht unterstützt default-int

Wie Sie das beheben?

+0

Dieser Fehler könnte bedeuten, dass einige Header fehlen. – AMA

+1

@AMA Danke .. Ich muss '#include ' hinzufügen –

Antwort

4

Alles, was Sie hinzufügen müssen, ist #include <vtkObjectFactory.h>. Das Tutorial hat das nie explizit erwähnt, schade.

Verwandte Themen