Krótko i konkretnie, jako, że nie każdy mógł o tym wiedzieć.
Pierwsze pytanie, to jaką wartość dla x uzyskamy takim kodem?
byte x;
byte a=1;
byte b=2;
x=a=b;
Pomyśl nad prawidłową odpowiedzią chwilę...
Prawidłowa odpowiedź to 2
Mało tego, od powyższej instrukcji każda zmienna wynosi 2
Uzasadnienie jest proste, takie operacje przypisania wykonywane są od prawej do lewej strony, więc:
a=b;
x=a;
Jak to NIE działa
x=1=2;
Kompilator od razy powiadomi nas, o błędnym przypisaniu.
1 != 2
Trzeba sobie uświadomić, że w taki sposób można wartościować tylko zmienne i indexery, a samo 1 i 2 można potraktować jako const (1 to 1 a 2 to 2), tak samo z
bool b;
b=false=true;
To chyba koniec dobranocki, i uważajcie na takie proste błędy.
Diabeł tkwi w szczegółach
Brak komentarzy:
Prześlij komentarz
Jeżeli nie chcesz skorzystać z konkretnego profilu to zaznacz "Nazwa / adres URL" (wystarczy podać nazwę), bądź "Anonimowy"