Klamry
Ostatnio zmodyfikowano 2011-07-01 16:34
diego997 Temat założony przez niniejszego użytkownika |
Klamry » 2011-07-01 15:27:16 Mam pytanie odnośnie tego fragmentu kodu: if( sterowanie.IsKeyDown( sf::Key::Left ) ) naszSprajt.Move( - 1, 0 );
if( sterowanie.IsKeyDown( sf::Key::Right ) ) naszSprajt.Move( + 1, 0 );
if( sterowanie.IsKeyDown( sf::Key::Up ) ) naszSprajt.Move( 0, - 1 );
if( sterowanie.IsKeyDown( sf::Key::Down ) ) naszSprajt.Move( 0, + 1 );
dlaczego po if nie użyto klamer, a mimo to kompilator wiedział co zrobić ?? |
|
SeaMonster131 |
» 2011-07-01 15:31:20 Jeżeli nie użyjesz klamer po if (i nie tylko po if), to wykona się kod do napotkania średnika :) |
|
diego997 Temat założony przez niniejszego użytkownika |
» 2011-07-01 15:37:27 Myślałem że klamry też blokują dostęp do np. instrukcji warunkowej i według mnie w tym przypadku bez względu na to czy nacisnę przycisk wykona się:
naszSprajt.Move( - 1, 0 ); |
|
pekfos |
» 2011-07-01 15:49:16 to masz to: klamry bez warunku i niczego innego. co wg twojej teorii robią? |
|
diego997 Temat założony przez niniejszego użytkownika |
» 2011-07-01 16:06:41 Kurde to teraz już nie wiem do czego klamry służą |
|
jaupl |
» 2011-07-01 16:13:49 Do zaznaczania obszaru kodu ?? Który ma być wykonany w pętli lub po spełnieniu warunku. albo obszaru kodu który należy do funkcji, klasy, przestrzeni nazw. itd. co do tego co napisał prefoks to chyba są wtedy po prostu zbędne chociaż nie wiem ^^ |
|
Dawidsoni |
» 2011-07-01 16:25:10 Klamry służą ci do zaznaczenie od kiedy zaczyna się dana instrukcja sterująca lub funkcja do kiedy. Twórcy języka po prostu wprowadzili zasadę, że jeśli w instrukcji sterującej if masz tylko jedną instrukcję, to nie musisz robić klamer. Możesz też stawiać własne klamry, gdzie chcesz. Pamiętaj też, że jeśli zdefiniujesz jakąś zmienną w klamrach to nie jest ona znana poza nimi. |
|
pekfos |
» 2011-07-01 16:26:25 jak zbędne? po wyjściu z bloku zmienne lokalne są niszczone. czasem ta właściwość się przydaje.. |
|
« 1 » 2 |