I får følgende feil når jeg prøver å kompilere skissen min:
I filen inkludert fra sketch.ino: 24: 0: SerialRenderer.h: 7: feil : forventet klassenavn før «{» token
SerialRenderer.h
#ifndef SERIALRENDERER_H_ #define SERIALRENDERER_H_ #include <MenuSystem.h> class SerialRenderer : public MenuComponentRenderer { public: SerialRenderer(); virtual ~SerialRenderer(); public: // methods from MenuComponentRenderer virtual void render(Menu const& menu) const; virtual void render_menu_item(MenuItem const& menu_item) const; virtual void render_back_menu_item(BackMenuItem const& menu_item) const; virtual void render_numeric_menu_item(NumericMenuItem const& menu_item) const; virtual void render_menu(Menu const& menu) const; }; #endif // SERIALRENDERER_H_
Innholdet i MenuSystem.h finner du på https://github.com/jonblack/arduino-menusystem/blob/master/MenuSystem.h .
Det virker som om inkludering av MenuSystem.h ikke skjer når SerialRenderer.h er inkludert fra hovedskissefilen min. Jeg får den samme feilen hvis inkluderingen i SerialRenderer.h blir fjernet.
Er det noe enkelt jeg mangler for at kompilatoren skal kunne «se» MenuSystem.h?
EDIT:
Det viser seg at jeg så på en nyere versjon av arduino-menusystembiblioteket enn jeg hadde installert (versjon 2.1.1). Den versjonen hadde ikke en klasse som heter MenuComponentRenderer.
Jeg hentet den siste versjonen fra https://github.com/jonblack/arduino-menusystem/tree/master og det kompilerer fint.
Svar
Det er mest sannsynlig forårsaket av at en riktig versjon av MenuSystem-biblioteket ikke er riktig installert. Sjekk om du kan legge til biblioteket i skissen din.
EDIT : la til at også versjonen skal være riktig
Kommentarer
- Jeg kan inkludere biblioteket i skissen min via skisse > Inkluder bibliotek. Også Library Manager viser at versjon 2.1.1 er installert.
- Husk å legge til inkluderingen i skissen. Bygningen vil se på skissen inkludert for å legge til de nødvendige stiene.
- @MikaelPatel Min hovedskisse inkluderer både SerialRenderer.h og MenuSystem.h, men jeg får den samme feilen om MenuSystem.h er eller ikke inkludert.
- Versjonen er faktisk også viktig.