| Autor |
Beitrag |
Karlson
      
Beiträge: 2088
|
Verfasst: Do 27.09.07 01:20
Moin!
Ich habe folgendes Array:
Delphi-Quelltext 1:
| Feld : Array[1..5] of Array[1..5] of Integer; |
Sagen wir mal jedes Array könnte die Formen 0 und 1 annehmen.
Würde man das dann nach einem bestimmten Schema füllen würde es so aussehen:
Delphi-Quelltext 1: 2: 3: 4:
| Feld[1][1]:=0; Feld[1][2]:=0; Feld[1][3]:=1; usw. |
Wenn man annimmt dass ich 10 verschiedene Formen habe, nimmt dieses Füllen ganze 250 Zeilen in Anspruch, macht den
Code unübersichtlich und aufgebläht.
Wenn man ein statisches Array hat kann man das ja so füllen:
Delphi-Quelltext 1:
| Feld : Array[1..5] of String = ('1','0','2','Bsp','3'); |
Gibt es diese oder eine ähnliche Möglichkeit in meinem Beispiel?
Merci!
|
|
Jerk
      
Beiträge: 251
Vista Ultimate, Ubuntu
Turbo Delphi 2006
|
Verfasst: Do 27.09.07 02:12
Na dann füll doch die Werte immer erst in ein DynArray und mittels Zählerschleife dann in das eigentliche Array, oder verstehe ich dein rpoblem nicht -.- ?
|
|
Tilo
      
Beiträge: 1098
Erhaltene Danke: 13
Win7 geg. WInXP oder sogar Win98
Rad2007
|
Verfasst: Do 27.09.07 06:39
Falls die Felder unregelmäßig gefüllt sind kannst Du die Werte auch in eine Datei auslagern und dann laden.
Das hat dann 2 Effekte:
- Werte stehen nicht im Code -> Bei großen Feldern Platzersparnis und
- Falls sich die Werte ändern brauchst Du nicht neucompilieren
|
|
Kroko
      
Beiträge: 1284
W98 W2k WXP
Turbo D
|
Verfasst: Do 27.09.07 07:06
kürzer wäre
Delphi-Quelltext 1:
| Feld : array[1..5,1..5] of Integer; |
auch
Delphi-Quelltext 1: 2: 3:
| Feld[1,1]:=0; Feld[1,2]:=0; Feld[1,3]:=1; |
Tipp lege doch die Vorgaben linear in einer konstanten ab und fülle dein Array:
Delphi-Quelltext 1: 2: 3: 4: 5: 6: 7: 8:
| coDef: array[0..24] of Integer = (0,0, ...); var X,Y: Integer; begin for Y := 1 to 5 do for X := 1 to 5 do Feld[X,Y] := coDef[(Y-1)*5+(X-1)]; |
PS: Wenn dein Index bei 0 anfangen würde, wäre die Formel einfacher, es wäre koform zu dynamischen Arrays usw usf
_________________ Die F1-Taste steht nicht unter Naturschutz und darf somit regelmäßig und oft benutzt werden! oder Wer lesen kann, ist klar im Vorteil!
|
|
alzaimar
      
Beiträge: 2889
Erhaltene Danke: 13
W2000, XP
D6E, BDS2006A, DevExpress
|
Verfasst: Do 27.09.07 07:38
Delphi-Quelltext 1: 2: 3: 4: 5: 6: 7: 8:
| Const MyConstArray : Array [1..5, 1..5] of integer = ( (0,0,1,0,1), (1,0,1,0,1), (0,1,1,0,1), (0,0,1,1,1), (0,0,1,0,1) ); |
Kurz und knapp. Aber wenn die sich ändern können, dann -wie Tilo sagt- in eine Datei auslagern.
_________________ Na denn, dann. Bis dann, denn.
|
|
Karlson 
      
Beiträge: 2088
|
Verfasst: Fr 28.09.07 12:57
Okay danke für die Antworten! Sowas wie Alzaimar geschrieben hat habe ich gesucht.
|
|
|