I får følgende fejl, når jeg forsøger at kompilere min skitse:

I filen inkluderet fra sketch.ino: 24: 0: SerialRenderer.h: 7: fejl : forventet klasse-navn 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_ 

Indholdet af MenuSystem.h kan findes på https://github.com/jonblack/arduino-menusystem/blob/master/MenuSystem.h .

Det ser ud til, at inkluderingen af MenuSystem.h ikke sker, når SerialRenderer.h er inkluderet i min hovedskitsefil. Jeg får den samme fejl, hvis inkluderingen i SerialRenderer.h fjernes.

Er der noget simpelt, jeg mangler for, at compileren kan “se” MenuSystem.h?

EDIT:

Det viser sig, at jeg kiggede på en nyere version af arduino-menusystembiblioteket, end jeg havde installeret (version 2.1.1). Denne version havde ikke en klasse kaldet MenuComponentRenderer.

Jeg hentede den nyeste version fra https://github.com/jonblack/arduino-menusystem/tree/master og det kompilerer fint.

Svar

Det skyldes sandsynligvis, at en korrekt version af MenuSystem-biblioteket ikke er korrekt installeret. Kontroller, om du kan føje biblioteket til din skitse.

EDIT : tilføjet, at også versionen skal være korrekt

Kommentarer

  • Jeg kan medtage biblioteket i min skitse via skitse > Inkluder bibliotek. Også Library Manager viser, at version 2.1.1 er installeret.
  • Husk at tilføje inkluderer til skitsen. Bygningen vil se på skitsen inkluderer for at tilføje de nødvendige stier.
  • @MikaelPatel Min hovedskitse inkluderer både SerialRenderer.h og MenuSystem.h, men jeg får den samme fejl, uanset om MenuSystem.h er inkluderet.
  • Faktisk er versionen også vigtig.

Skriv et svar

Din e-mailadresse vil ikke blive publiceret. Krævede felter er markeret med *