Document ID: /fineweb-2-swissfilter-quality_10-filterrobots/filtered/03262.jsonl.gz/2104

Hallo René,
ich habe da ein Verständnisproblem. In den übernommenen Funktionen aus der ursprünglichen Klasse TFT_eSPI findet sich auch zweimal die Funktion drawString(). Einmal als drawString(const char *string ... ) und einmal als drawString(const String& string ... ). Die erste Deklaration ist mir klar. Es wird eben KEINE Kopie des C-Strings übergeben sondern nur ein Pointer auf das erste Element eines NUL-terminierten C-Strings (Eine Reihe (array) von Buchstaben (bytes), auf deren letztes gültiges Element eben NUL folgt). Es wird also die Adresse dieses besagten Elemets (Bytes) übergeben.
Im zweiten Fall wird die Adresse des String-Objektes übergeben. Das ist aus meiner Sicht doch das gleiche. In beiden Fällen wird die Adresse des ersten Bytes einer Datenstruktur übergeben.
Warum also wird der zweite Fall nicht wie folgt deklariert: drawString(const String *string ... )? Oder ginge das etwa auch?
Ich habe wirklich versucht, Informationen dazu zu finden, war aber leider nicht erfolgreich. (Wahrscheinlich habe ich falsch gesucht. Aber um die richtige Frage zu stellen, muss man die Antwort schon zur Hälfte kennen.) Könntest Du etwas Licht in dieses Dunkel bringen?
Vorab schon mal vielen Dank!
Vielen Dank auch für die viele Mühe und Arbeit, die Du in Deine Videos steckst. Ich finde sie ausgesprochen lehrreich. Du hast sie immer sehr gut vorbereitet und bringst die Thematiken in einem (für mich ) sehr angenehmen Tempo herüber. Leider bin ich berufstätig und habe daher immer nur maximal am Wochenende etwas Zeit für mein Hobby.
Viele Grüße in die schöne Schweiz!
Sigi