- SF800 Solar Speicher Tutorial         
Ergebnis 1 bis 10 von 23

Thema: Tutorial: Erstellen einer Arduino-Bibliothek

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Erfahrener Benutzer Begeisterter Techniker Avatar von Chypsylon
    Registriert seit
    02.02.2011
    Ort
    Graz/Österreich
    Beiträge
    256
    Zitat Zitat von Sisor Beitrag anzeigen
    Die Methoden des Objekts werden über den '.'-Operator angesprochen, wie man es von z.B. Java oder C# kennt. (Dies ist eine Besonderheit der Arduino-IDE. C++-Programierer wundern sich: Normalerweise ist hier doch ein Pfeiloperator?)
    C++ verwendet genauso den '.'-Operator. Der '->'-Pfeil ist nur eine Abkürzung um sich das derefernzieren eines Pointers zu ersparen.

    Code:
    Foo *myFoo = new Foo();
    
    (*myFoo).foobar();
    //ist das gleiche wie
    myFoo->foobar();

  2. #2
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    13.01.2014
    Beiträge
    454
    Blog-Einträge
    3
    Danke für den Hinweis, da hatte ich im Kopf mächtig was verdreht.
    In meinem Beispiel wird eben nicht mit 'new' und Referenz gearbeitet. Daher fällt natürlich auch das Dereferenzieren weg.
    Code:
    Foo myFoo();
    myFoo.foobar();
    
    // ohne Anwendung, nur zur Veranschaulichung:
    Foo* myFooPtr = &myFoo;  // Referenz erzeugen
    myFooPtr->foobar();      // indirekter Zugriff
    Habs korrigiert.

  3. #3
    Benutzer Stammmitglied
    Registriert seit
    16.02.2014
    Beiträge
    80
    Hey Sisor, und wieder herzlichen Dank für das Tutorial! Ich werde es nutzen um meine rudimentären C-Kenntnisse endlich auf rudimentäre C++-Kenntnisse aufzustocken wenn ich mal wieder Zeit für den Arduino hab'...

  4. #4
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    13.01.2014
    Beiträge
    454
    Blog-Einträge
    3
    Kein Problem, ich hatte mich mit dem Thema gerade beschäftigt und dachte, ich fass das Gelernte mal für mich und andere zusammen. Interessant ist, dass jedes der 5 Programme (Schritt 2 - 6) die gleiche Funktionalität aufweist. Je komplexer ein Programm wird, desto mehr macht eine modulare, objektorientierte Herangehensweise Sinn.

  5. #5
    Unregistriert
    Gast

    Compiler-Fehler / INT vs Byte

    D:\Eigene Dateien\Arduino\libraries\RGBLed\RGBLed.cpp:9:6: error: prototype for 'void RGBLed::setRGB(int, int, int)' does not match any in class 'RGBLed'
    void RGBLed::setRGB(int r, int g, int b) {
    ^
    In file included from D:\Eigene Dateien\Arduino\libraries\RGBLed\RGBLed.cpp:1:0:
    D:\Eigene Dateien\Arduino\libraries\RGBLed\RGBLed.h:15:7: error: candidate is: void RGBLed::setRGB(byte, byte, byte)
    void setRGB(byte r, byte g, byte b) ;
    ^
    Fehler beim Kompilieren.

  6. #6
    Erfahrener Benutzer Begeisterter Techniker Avatar von Chypsylon
    Registriert seit
    02.02.2011
    Ort
    Graz/Österreich
    Beiträge
    256
    Der Compiler sagt dir doch eh schon wo das Problem liegt

    Im header File (.h) ist setRGB(byte r, byte g, byte b); mit bytes definiert. Im .cpp ist gibts die Funktion aber nur mit ints als Parameter ausprogrammiert. Das ist vermutlcih einfach ein Copy&Paste Fehler des Autors, ändere die ints zu bytes und es sollte funktionieren.

  7. #7
    Unregistriert
    Gast

    Cool Ist behoben -> weitere Frage dazu

    Vielen Dank für die Rückantwort.0
    Habe das bereits geändert so ´dass der Funktionsrumpf und die Implementierung über Byte arbeiten.
    Wollte gerne noch bei meinem Projekt in die CPP-Datei die IRremote.h einbinden.
    Wo kann man dazu noch was finden?

    Derzeit kommt das dabei raus:
    --------------
    IRControl.cpp:1:22: fatal error: IRremote.h: No such file or directory
    #include <IRremote.h>
    ^
    compilation terminated.
    Fehler beim Kompilieren.
    --------------

    Meine Klasse soll IRControl heißen und Steuercodes auf den Seriellen Monitor bzw. einen INT-Wert zurückgeben.
    Hatte da schon ein Programm fertig, welches ich jetzt mit diesen Tutoriell in eine Klasse stecken möchte.

Ähnliche Themen

  1. problem bei der verwendung einer twi bibliothek (avr-gcc)
    Von avrrobot im Forum Software, Algorithmen und KI
    Antworten: 18
    Letzter Beitrag: 17.01.2011, 20:13
  2. NIBObee: beelib - noch einer andere Bibliothek...
    Von bantyy im Forum Sonstige Roboter- und artverwandte Modelle
    Antworten: 4
    Letzter Beitrag: 01.06.2010, 22:18
  3. Einbinden einer Bibliothek in ein Assembler Programm
    Von EGS-3 im Forum PIC Controller
    Antworten: 2
    Letzter Beitrag: 12.07.2006, 21:55
  4. Gibt es eine Bibliothek für das Erstellen von Bildern ?
    Von terny im Forum C - Programmierung (GCC u.a.)
    Antworten: 0
    Letzter Beitrag: 12.09.2005, 08:15
  5. Fragen zur Erstellung einer Eagle Bibliothek
    Von Arme Sau im Forum Konstruktion/CAD/3D-Druck/Sketchup und Platinenlayout Eagle & Fritzing u.a.
    Antworten: 3
    Letzter Beitrag: 18.12.2004, 08:56

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

Solar Speicher und Akkus Tests