Wie sind denn Deine C++ Kenntnisse hinsichtlich Klassen, Konstruktor etc.?
Vergleiche mal die Struktur Deiner .ccp und .h mit funktionierenen Libraries bzw. lies ggf. mal etwas zu Klassen/Konstruktoren/Destruktoren dem Aufbau und den Bedingungen.Da der Konstruktor bei der Definition eines Objektes immer automatisch aufgerufen wird, darf er in der Regel
nicht
im private-Bereich der Klasse stehen. Sie könnten ansonsten kein Objekt der Klasse definieren da der Konstruktor nicht aufgerufen werden kann.
Im geposteten Code sehe ich kein "public:". Wenn der so vollständig ist, fehlt da noch einiges.
also cpp hab ich bislang nicht gemacht, wir machen in der Uni c. Ich hab mal meine .cpp in .c umgenannt da ich weiterhin mit c programmieren möchte.Gibts es da bei den Klassen und Strukturen unterschiede zwischen c und cpp ?
Ich habe das ganze jetzt mal übersichtlicher gestaltet und es sieht nun so aus...
Danke für die Hilfe
in C gibt es keine Klassen, sondern nur Strukturen.
Nur in C++ gibt es Klasssen, das ist ja genau der Grund, warum C++ auf der Basis von C entwickelt wurde.
C++ ist im Wesentlichen C90 plus Klassen plus Vererbung plus Overloading plus stream,
mit teilweise auch strengeren Regeln als C, nicht immer C99-kompatibel,
und C++ Syntax und Sprachumfang sind extrem Versions-abhängig ( C++(98), C++(03), C++(11), C++(14), C++(17) ) .
Arduino basiert auf C++ (die älteren Versionen C++(03), ab 1.6.6 dann C++(11))
PS,
Könntest du deinen Code bitte als Text in Code-Tags posten?!?
Geändert von HaWe (11.03.2018 um 10:57 Uhr)
achso okay top.
ja ich habe eine roboter bib aus arduino mit cpp die ich nun auf mbed importieren will als c bib.
punkt c.txt
punkt h.txt
Ich hoffe du hast das gemeint mit code in Textform
Danke für eure/deine Hilfe
nein
poste bitte den korrekten vollständigen Sourcecode in normaler Textform, so wie hier...!
Code:#include <LiquidCrystal_I2C.h> LiquidCrystal_I2C lcd (0x20,16,2); void setup() { lcd.init(); lcd.backlight(); } void loop() { lcd.setCursor(0,0); lcd.print("Hello,world"); lcd.setCursor(0,1); lcd.print("LCD I2C"); }
aber C++ Libs auf ANSI C runter-portieren .... na dazu viel Glück...!
Lesezeichen