extern

Hallo,

was bedeutet extern?

Beispiel:

extern const TProgmemPalette16 myRedWhiteBluePalette_p PROGMEM;

Gruß Chris

Das ist eine "extern" Deklaration.
Die Variable ist sicherlich irgendwo anderes definiert.

Der Compiler wird so tun als kenne er die Variable.
Erst der Linker löst diese Abhängigkeit auf.

Ok. Warum macht man das?

Gruß Chris

z.B. weil du keine riesige Array Initialisierung in deinem Sketch haben willst. Also lagert man das wo anders hin aus und sagt hier nur dass das Array bekannt ist.

C von A bis Z:

extern
Befindet sich die Variable in einer anderen Datei, wird das Schlüsselwort extern davor gesetzt. Diese Speicherklasse wird für Variablen verwendet, die im gesamten Programm verwendet werden können.

Diese Speicherklasse wird für Variablen verwendet, die im gesamten Programm verwendet werden können.

Wire, Serial, uvm. sind genau solche Schweinchen!

Du machst “#include <Wire.h>

Die extern Deklaration von Wire in Wire.h:
extern TwoWire Wire;

Die Definition von Wire in 'Wire.cpp:
TwoWire Wire = TwoWire();

Und “Zack”, kannst du an beliebiger Stelle, bevorzugt in setup(), deinen “Wire.begin();” Aufruf machen, ohne dich um die Erstellung des TWI Objektes irgendwie kümmern zu müssen.

Wire” steht überall zur Verfügung.
Ein Singleton. (mit allen seinen (Vor- und) Nachteilen)