Hallo,
ich habe in einer Klasse ein statisches multidimensionales Array mit der
Größe 10. Die Elemente dieses Arrays sind wiederum ein Array
unbekannter Größe über ein Array mit der Größe 2.
Ganz konkret: Es sind Pixelangaben für 10 Ziffern. Die Anzahl[0] = 10,
ein Pixel besteht aus X/Y, nur die Anzahl der Pixel soll dynamisch
erfolgen.
Ich dachte an sowas, was aber nicht übersetzt werden kann:
Was ist denn jetzt wann "dynamisch"? Sollen da zur Laufzeit neue Daten
reingeschrieben werden, oder stehen die Daten zur Compilezeit fest, und
du hast nur keine Lust, die abzuzählen?
Oliver
Die Daten stehen zur Compilezeit alle fest.
au8Ziffer
[0] << Ziffer "0"
[x] << Pixxelpaar
[0] << X-Koordinate
Die Anzahl der Pixelpaare soll halt dynmaisch geändert werden können,
bzw. für jede Ziffer unterschiedlich sein.
Aber alles zur Compilezeit bekannt.
Hm. Klingt wirr, und ist wohl auch so. Was ist mit
1
[0]<<Ziffer"0"
gemeint?
C/C++-Array können generell nur eine Arraydimension ohne Größenangabe
haben und das muß die letzte sein.
Und was spricht dagegen, ein Ziffern-Objekt zu definieren, mit
Punkt-Objekten und Koordinaten x und y, und keine unstrukturierte
Datenwüste?
Oliver
Wie soll ich das machen, wenn bei jeder Ziffer die Anzahl von
Koordinaten unterschiedlich ist? Ich möchte nicht mit Vectoren oder
Templates arbeiten:
Wenn die Angabe nicht statisch ist, dann müssen die Dimensionen bekannt
sein. Folgendes geht nicht:
1
classZiffer{
2
public:
3
uint8_tkoordinaten[][2];
4
};
Und für jede Ziffer eine statische Klasse erstellen finde ich nicht
zielführend.
Bis jetzt habe ich das folgendermaßen gelöst und möchte die Ziffern in
ein Array packen, welches statisch in der Klasse definiert sein soll: