case 8-o

0

var
x,y : Byte;
begin
x := 3;
y := 3;
case y of
1: ...;
2: ...;
x: ...;
4: ...;
5: ...;
end;
end;

...i nie chce się skompilować.
Dlaczego nie można tak porównać ?
Trochę mnie to zaskoczyło 8-o
Mam w programie trochę takich bloków
i nie chce mi się zmieniać wszystkich
na if...then.
Jest sposób żeby zapisać zmienną jako
liczbę sprawdzaną ?--"Wniosek to punkt, w którym nie masz już siły dalej myśleć"

----- MCkawa -----
Delphi 6 / C / C++

0

No niestety to moze byc tylko stala. Kombinowalem ze 'zmiennymi' stalymi ({$J+}), ze wskaznikami - kompilator nic nie chce puscic. Ale zauwaz, ze ma to pewien sens. Gdyby w Twoim programie x bylo rowne 2, wtedy biedna instrukcja case nie wiedzialaby co ze soba zrobic...

--
Pawel {Delphi 6 Personal}

Po pierwsze: naciśnij F1

0

pq napisał:
...Ale zauwaz, ze ma to pewien sens. Gdyby w Twoim programie x bylo rowne 2, wtedy biedna instrukcja case nie wiedzialaby co ze soba zrobic...

Wykonała by obydwie instrukcje po kolei - tak jak dwie instrukcje if po sobie.

No trudno - nie ma rady...
--"Wniosek to punkt, w którym nie masz już siły dalej myśleć"

----- MCkawa -----
Delphi 6 / C / C++

1 użytkowników online, w tym zalogowanych: 0, gości: 1