Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Try..Catch vs If...

[es] :: C/C++ programiranje :: C/C++ za početnike :: Try..Catch vs If...

[ Pregleda: 2517 | Odgovora: 5 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

Ice-D

Član broj: 203571
Poruke: 33
*.adsl.net.t-com.hr.



Profil

icon Try..Catch vs If...30.12.2008. u 16:03 - pre 186 meseci
Jeli bolje što se tiče performanca koristit try...catch...blok ili vršitit provjeru sa if.
Recimo ako nekoliko puta po neodređenoj putanji prolazim kroz neki 2d niz i treba postaviti svaki susjedni (lijevi, desni, gornji, donji ) na neku vrijednost i sad treba paziti da ne iziđem izvan granica niza. Jeli bolje izostaviti provjeru sa if i sve staviti u try...catch...blok pa kad se desi "index out of rang" da program normalno nastavi dalje, samo ne obavi operaciju ( kao da je naišao na if...)
 
Odgovor na temu

icobh
Igor Pejašinović
Network Admin
Navigo SC d.o.o.
Banja Luka

Član broj: 18738
Poruke: 1319
*.opera-mini.net.

Sajt: www.nsc.ba


+4 Profil

icon Re: Try..Catch vs If...30.12.2008. u 18:37 - pre 186 meseci
Sto se tice C++, ja sam radio dosta i previse ovakvih stvari i znam da nikad nisam radio sa try blokom, vjerovatno zato sto se kod mora budziti jer C++ po defaultu nakon odradjene catch rutine iskace iz programa. Npr. Java je takva da jednostavno moras koristiti try blok, zato se pribjegava pisanju sto manjih f-ja u kojima moze da se baci exception. Pa vidi, mozda moze da ti pomogne takav pristup...
I ♥ ♀

Ovaj post je zlata vrijedan!
 
Odgovor na temu

Eurora3D Team
Nebojsa - Programer & Vodja tima
Beograd

Član broj: 120376
Poruke: 900
91.148.114.*



+7 Profil

icon Re: Try..Catch vs If...01.01.2009. u 04:55 - pre 186 meseci
I ja delim icobh - ovo misljenje
Zna se sta sluzi za sta ... if je za proveru a try / catch za izbegavanje gresaka (a ne posla)
A i if radi brze
 
Odgovor na temu

Shadowed
Vojvodina

Član broj: 649
Poruke: 12851



+4784 Profil

icon Re: Try..Catch vs If...01.01.2009. u 11:16 - pre 186 meseci
A i ako postavis iteratore kako treba, neces ni izaci iz opsega :)
 
Odgovor na temu

X Files
Vladimir Stefanovic
Pozarevac

SuperModerator
Član broj: 15100
Poruke: 4902
*.dynamic.sbb.rs.

Jabber: xfiles@elitesecurity.org


+638 Profil

icon Re: Try..Catch vs If...01.01.2009. u 11:43 - pre 186 meseci
Citat:

Jeli bolje izostaviti provjeru sa if i sve staviti u try...catch...blok pa kad se desi "index out of rang"


"Index out of range" je poruka koja se dobija obicno od nekog konkretng frameworka, kada indeks izadje van dozvoljenih okvira. To je poslednja linija odbrane.

Implementira se tipicno preko if provere (u samom frameworku) i bacanja izuzetka:
Code:

if ( nesto_nedozvoljeno )
   baci_izuzetak();


Dakle, ako se odlucis za try/catch, imas sledecu situaciju:
1. if test (frameworka)
2. bacanje izuzetka (frameworka)
3. hvatanje izuzetka (tvoja aplikacija)

Ako se odlucis za if, imas sledecu situaciju:
1. if test (tvoja aplikacija)

Vise je nego ocigledno sta je brze i bolje, mada ti je vec to i receno.

try/catch se vise koristi kada je u bloku nesto sto se tesko ili nikako ne moze kontrolisati (ispitati) ili bi prethodna ispitivanja bila isuvise glomazna, nezgrapna, spora, nepotpuna i sl. Tada obavezno vrsim upis u log fajl da bih video sta se tacno desava.



BTW: Kad sam prvi put procitao ovo pitanje, video sam "sta je bolje, switch ili if"... eh sta je mozak... cita ono sto ocekuje da pise...


[Ovu poruku je menjao X Files dana 01.01.2009. u 12:58 GMT+1]
 
Odgovor na temu

Eurora3D Team
Nebojsa - Programer & Vodja tima
Beograd

Član broj: 120376
Poruke: 900
91.148.112.*



+7 Profil

icon Re: Try..Catch vs If...01.01.2009. u 17:35 - pre 186 meseci
I obrati paznju na ovo sto ti je napisao Shadowed
U tvom slucaju : postavi iteraciju od start + 1 do kraj - 1 (uslov da imas bar 3 elementa) i proveravaj index -1 , index , index +1 (tako i uspravno u 2d nizu)
Ovo je najlogicnije resenje ako znas kolika je matrica

[Ovu poruku je menjao Eurora3D Team dana 02.01.2009. u 02:41 GMT+1]
 
Odgovor na temu

[es] :: C/C++ programiranje :: C/C++ za početnike :: Try..Catch vs If...

[ Pregleda: 2517 | Odgovora: 5 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.