Probleme mit Costum Class

Nöö...

Zurück zum Anfang:

void Lock::setRing() {
  Serial.println("activeSensors " +activeSensors);  //Ausgabe: "sensorCount  "
  for (int i = 0; i < activeSensors; i++)
    leds[i].setColor(blue);                                     //leds werden nicht geschaltet

Serial.Println() bekommt das Additionsergebnis aus Adresse des Strings und der Variablen activeSensors.

Diese neue/berechnete Adresse wird von Println als char * akzeptiert.
Stinknormale Pointer Arithmetik.
Im Grunde völlig ok, wenn es denn so gewollt wäre.
Aber das ist es wohl nicht.

Da activeSensors in dem Fall Null ist, wird die Zeichenkette "sensorCount " ausgegeben.
Die Schleife wird nicht durchlaufen, weil activeSensors == 0
Damit ist auch klar, warum die LEDs nicht reagieren.

In meinem Beispiel habe ich activeSensors = 4 gesetzt.
Dann wird der String auch erwartungsgemäß vorn abgeschnitten.

Ich will gar nicht wissen, was ausgegeben wird, wenn die berechnete Adresse irgendwann über den String hinweg zeigt.