- Labornetzteil AliExpress         
Ergebnis 1 bis 9 von 9

Thema: C-Problem - Variable / Pointer als Out-Parameter einer Methode

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    HaWe
    Gast
    Zitat Zitat von Moppi Beitrag anzeigen
    chruttli, kann passieren.

    Ich habs nur überflogen und mich über die Struktur gewundert. Daher kam das.

    MfG
    oftmals sind Antworten, wenn man die eigentliche Frage nur "nur überflogen" hat, nicht so besonders zielführend

  2. #2
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    13.01.2014
    Beiträge
    454
    Blog-Einträge
    3
    Im objektorientierten C++ wäre ein Lösungsansatz die Definition eines Images (hier als Struktur).
    Danach muss dem display-Objekt noch beigebracht werden, wie Images gezeichnet werden:

    Code:
    // Definition eines Images
    struct Image {
        const int16_t width, height;
        const char* text;
        const uint16_t* data;
    };
    
    // Klasse MyTFT erweitert Adafruit_ILI9341 um Methode drawImage
    class MyTFT : public Adafruit_ILI9341 {
    public:
      void drawImage(int16_t x, int16_t y, Image i) {
        this->drawRGBBitmap(x, y, i.data, i.height, i.width);
      }
    };
    
    // Bitmaps im Flash
    uint16_t wolke_bitmap[] PROGMEM = {
    0x0000, 0x0020, 0x0020, 0x0020, 0x0020, 0x0841
    };
    uint16_t sonne_bitmap[] PROGMEM = {
    0x0861, 0x1082, 0x10a2, 0x18c3, 0x18e3, 0x2104, 0x2124
    };
    
    // Images erstellen
    const Image wolke = { 20, 25, "Wolke", wolke_bitmap };
    const Image sonne = { 68,  2, "Sonne", sonne_bitmap };
    
    // display-Objekt, dass mit Images umgehen kann, erstellen
    MyTFT display = MyTFT(TFT_CS, TFT_DC, TFT_RST); // Hier Pins eintragen
    
    //...
    
    void loop(){
    //...
        display.drawImage(10, 10, sonne);
    }

  3. #3
    Neuer Benutzer Öfters hier
    Registriert seit
    02.05.2007
    Beiträge
    24
    @Moppi: ja, ich bin beruflich Softwareentwickler und arbeite den ganzen Tag objektorientiert Deshalb meine falschen Bezeichnungen. Ich meine natürlich Funktion und nicht Methode

    @Sisor: Besten Dank für dein Beispiel. Das ist glaube ich so ungefähr das, wie ich es mir vorstelle. Ich werde es zu Hause testen.

  4. #4
    Neuer Benutzer Öfters hier
    Registriert seit
    02.05.2007
    Beiträge
    24
    Vielen Dank euch allen für die Hilfe.

    Mit Sisor's Vorschlag funktioniert es bestens.

    Gruess
    Chruttli

Ähnliche Themen

  1. pthread-Task als Methode einer C++ Klasse?
    Von HaWe im Forum Raspberry Pi
    Antworten: 44
    Letzter Beitrag: 29.09.2016, 19:37
  2. Pointer als Parameter und Rückgabewert
    Von Bumbum im Forum C - Programmierung (GCC u.a.)
    Antworten: 11
    Letzter Beitrag: 02.12.2012, 14:11
  3. ATTiny25 _delay_ms mit Variable als Parameter
    Von Bumbum im Forum C - Programmierung (GCC u.a.)
    Antworten: 3
    Letzter Beitrag: 19.07.2012, 22:37
  4. Variable als Parameter oder Return-Value
    Von Jaecko im Forum C - Programmierung (GCC u.a.)
    Antworten: 0
    Letzter Beitrag: 31.01.2011, 13:33
  5. setzen einer Variable nach ablauf einer bestimmten Zeit
    Von mat-sche im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 6
    Letzter Beitrag: 07.12.2008, 23:45

Stichworte

Berechtigungen

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

fchao-Sinus-Wechselrichter AliExpress