002
17.03.2006, 07:13 Uhr
Tommix
|
'Morgen, curr_idx zu ändern ist vermutlich nicht gewollt. Eine Variante wäre
C++: |
array[curr_idx-(curr_idx > 0)-(curr_idx > 1)];
|
was allerdings am Ende wenig lesbar ist. Bei einer festen, nicht zu großen Arraygröße wäre auch denkbar die Indizes quasi vorzubereiten:
C++: |
int vorvorgaenger[] = {0, 0, 1, 2, 3}; var = array[vorvorgaenger[cur_idx]];
|
Zum dritten könnte man das Array auf sieben Elemente erweitern und das eigentlich nullte Element auf Position 2 speichern. Damit wären dann für alle Elemente zwei Vorgänger vorhanden.
Gruß, Tommix |