←  Pytania

AMXX.pl: Support AMX Mod X i SourceMod

»

[ROZWIĄZANE] Jak dokładnie działa switch(k...


Best Answer Wielkie Jol 08.02.2015 20:46

Przy małej ilości warunków różnicy nie zauważysz, jednak przy większej powinieneś użyć switcha. Zresztą łatwiej się tym operuje, niż za każdym razem pisać warunek if... then
...
I switch działa szybciej niż if...
Wymagana znajomość angielskiego
http://www.blackwasp...ElseSwitch.aspx Go to the full post
Locked

  • +
  • -
Ossal's Photo Ossal 08.02.2015

Powiedzmy że mamy coś takiego:

switch(costam){
          case wartosc1: funkcja1()
          case wartosc2: funkcja2()
          default: funkcja3()
}

Działanie będzie miało identyczne jak coś takiego z użyciem if'a:

if(costam==wartosc1) funkcja1()
else if(costam==wartosc2) funkcja2()
else funkcja3()

Oczywiście tych else if'ów i case'ów mogło by być wiele wiele więcej, to tylko krótki przykład. Moje pytanie jest takie, czy po skompilowaniu jeden kod równa się drugiemu (czy stanowią identyczne obciążenie dla procka)? A może jest tak, ze switch w magiczny sposób od razu przeskakuje do linijki z szukaną wartością? Z góry dzięki za odp :)

 


Edited by Ossal, 08.02.2015 20:02.
Quote

  • +
  • -
Best Answer Wielkie Jol's Photo Wielkie Jol 08.02.2015

Przy małej ilości warunków różnicy nie zauważysz, jednak przy większej powinieneś użyć switcha. Zresztą łatwiej się tym operuje, niż za każdym razem pisać warunek if... then
...
I switch działa szybciej niż if...
Wymagana znajomość angielskiego
http://www.blackwasp...ElseSwitch.aspx
Edited by Wielkie Jol, 08.02.2015 20:47.
Quote

  • +
  • -
Ossal's Photo Ossal 08.02.2015

Dobra, tyle chciałem wiedzieć :)

Quote

  • +
  • -
radim's Photo radim 08.02.2015

Wiadomość wygenerowana automatycznie


Ten temat został zamknięty przez moderatora.

Powód: Pomoc udzielona

Jeśli się z tym nie zgadzasz, report.png raportuj ten post, a moderator lub administrator rozpatrzy go ponownie.


Z pozdrowieniami,
Zespół AMXX.PL
Quote
Locked