array und Klassen

Hallo zusammen.

ich versuche gerade etwas, was nicht hinhauen will. ich hab eine Klasse für eine DuoLED geschrieben. Die macht auch was sie soll.

// Klasse für Duo-LED 
class DUO {
public:
  // Constructor
  DUO(byte pinGe, byte pinRt);      
  void init(byte pinGe, byte pinRt);      
  void rot();
  void gelb();
  void aus();
  void blink(boolean ea);

private:    
  byte _pinGe;
  byte _pinRt;
  boolean aktiv;
  unsigned long _ende;

};

DUO LED_s(19,18);

LED.gelb();
...

Nun möchte ich sie in ein Array packen und bei der Initialisierung
gleich alle Pins mit angeben.

DUO LEDs[2] = {19,18,21,22};

Fehler-Meldung:

Arduino: 1.6.9 (Windows 10), Board: "Arduino Nano, ATmega328"

Schattenbahnhof:81: error: too many initializers for 'DUO [2]'

DUO LED_s[2] = {19,18,21,20};

^

Schattenbahnhof:81: error: conversion from 'int' to non-scalar type 'DUO' requested

Schattenbahnhof:81: error: conversion from 'int' to non-scalar type 'DUO' requested

exit status 1
too many initializers for 'DUO [2]'

Kann mir einer helfen?

Gruß

Kalli

Wenn du das Array außerhalb des Objektes halten kannst, dann übergib die Länge und einen Zeiger darauf.

Möchtest du das Array als Eigenschaft des Objektes, dann dürfte es sinnvoll sein, ein Klassen Template zu verwenden. Dann kommst du ohne dynamische Speicherverwaltung aus.

?

DUO LED_s[2] = {{19, 18}, {21, 20}};

Danke!

{{},{}} ... irgendwie ist das auch logisch.

Kalli