Zaloguj się by uzyskać pełen dostęp. Nie masz jeszcze konta? Założ je już teraz w kilka sekund.

Wysłany: 2012-12-03, 14:07


Biker_







Wiek: 29
Na forum: 5246 dni
Posty: 126

Piwa: 16

Respekt: 50

Siemka.;d
Mam pytanko jakiej lepiej u?ywa? p?tli ?
for czy foreach ?
Kt?ra jest lepsza i w czym jest lepsza ?

Postaw piwo autorowi tego posta
 

 
Wysłany: 2012-12-03, 17:05


Combacior







Wiek: 29
Na forum: 5796 dni
Posty: 1516

Piwa: 2161

Respekt: 1060
Respekt: 1060

Ostrzeżeń: 20%
P?tle r??ni? si? tylko szybko?ci?. Jedna dzia?a szybciej, druga wolniej. Foreach jako skrypt ma przydatne funkcje (bynajmniej dla mnie). Pewnie ma?o kto tutaj si? interesuje foreachem. Ka?dy u?ywa tylko podstawowych funkcji zrobionych przez Kalcora i paczk?, a Y_Less oraz Slice u?atwiaj? nam ?ycie, tworz?c includy, np. foreach, a wi?kszo?? z nas tego nie u?ywa. To tak na marginesie, teraz odpowied? do tematu. Lepiej u?ywa? p?tli foreach, tylko dlatego, ?e po prostu jest szybsza.

Postaw piwo autorowi tego posta
 

 
Wysłany: 2012-12-03, 22:26


Perez.







Wiek: 31
Na forum: 4947 dni
Posty: 3
Nick w MP: Perez.

Piwa: 6

Respekt: 38,7

Ostrzeżeń: 100%
Cytat:

P?tle r??ni? si? tylko szybko?ci?.


Oraz zasad? ich dzia?ania, do ilu si? wykonuj?, od jakiej liczby, do jakiej, od przodu, od ty?, jak nie jeste? pewien czy tylko to nie m?w.

Cytat:

Jedna dzia?a szybciej, druga wolniej.

No jasne, uwierz mi ?e robi?em testy na 500 graczy, raz szybciej ta p?tla si? wykonuje raz ta wi?c sko?cz pieprzy? bzdury, jak nie wierzysz to sprawd? oczywi?cie wyklucz z tego foreach bo wiadomo - najszybciej si? wykona.

Cytat:

Foreach jako skrypt ma przydatne funkcje (bynajmniej dla mnie).

Foreach to biblioteka, posiada r??ne przydatne funkcje, zapomnia?e? doda? ?e nie s?u?y tylko i wy??cznie do p?tli ale te? mo?e zast?powa? tablice je?li tylko potrafi si? to dobrze u?y?.

Cytat:

Pewnie ma?o kto tutaj si? interesuje foreachem.

No to ma?o wiesz, bo si?dz? w Pawn ok 3,5 lat, i u?ywam foreacha od ok 2, na pewno jest tutaj wi?cej os?b kt?re z tego korzystaj? tylko po prostu si? nie ujawniaj?.

Cytat:

Ka?dy u?ywa tylko podstawowych funkcji zrobionych przez Kalcora i paczk?, a Y_Less oraz Slice u?atwiaj? nam ?ycie, tworz?c includy, np. foreach, a wi?kszo?? z nas tego nie u?ywa.

G?upie gadanie, a jak my?lisz p?tle foreach y_less'a nie wzoruj? si? for'em? wszystko wzoruj? si? kodem g??wnym SA:MP'a.

Cytat:

Lepiej u?ywa? p?tli foreach, tylko dlatego, ?e po prostu jest szybsza.

Nie wymieni?e? p?tli kt?ra jest wzorowana na zasadzie dzia?ania foreach.

Dobra wi?c, najlepsze rozwi?zanie.
Kod:

foreach(Player, x)


P?tla for na zasadzie foreacha.
Kod:

for(new x = GetMaxPlayers() -1; x >= 0; x--)


Pozosta?e p?tle, wymieniam je od najlepszego do najgorszego ;)

Kod:

for(new i, g = GetMaxPlayers(); i != g; i++)

Kod:

for(new i, g = GetMaxPlayers(); i < g; i++)

Kod:

for(new i; i != GetMaxPlayers(); i ++)

Kod:

for(new i; i < GetMaxPlayers(); i ++)


Reszta p?tli typu.

Kod:

for(new x=0;x<MAX_PLAYERS;x++)


jest bez sensu, oczywi?cie tam gdzie GetMaxPlayers(); mo?na wpisa? swoj? liczb? slot?w, kod pr?dzej si? wykona.

Mo?na te? zrobi? tak:

// Globalnie
new maxp;
// OnGameModeInit
maxp = GetMaxPlayers();
// Petla
Kod:

for(new x = maxp -1; x >= 0; x--)


Pozdrawiam :mrgreen:

Postaw piwo autorowi tego posta
 

 
Wysłany: 2012-12-04, 14:00


Combacior







Wiek: 29
Na forum: 5796 dni
Posty: 1516

Piwa: 2161

Respekt: 1060
Respekt: 1060

Ostrzeżeń: 20%
"Perez." napisał/a:

No jasne, uwierz mi ?e robi?em testy na 500 graczy, raz szybciej ta p?tla si? wykonuje raz ta wi?c sko?cz pieprzy? bzdury, jak nie wierzysz to sprawd? oczywi?cie wyklucz z tego foreach bo wiadomo - najszybciej si? wykona.


Szybciej si? wykona ta, w kt?rej jest mniej kodu. Poda?em przyk?ad, dla kt?rego kod jest taki sam. Nie wiesz to nie krytykuj.

"Perez." napisał/a:

Foreach to biblioteka, posiada r??ne przydatne funkcje, zapomnia?e? doda? ?e nie s?u?y tylko i wy??cznie do p?tli ale te? mo?e zast?powa? tablice je?li tylko potrafi si? to dobrze u?y?.


Cytat:

Foreach jako skrypt ma przydatne funkcje


Czy ja napisa?em, ?e s?u?y tylko do p?tli? Powt?rzy?e? to samo, co napisa?em o przydatnych funkcjach.

"Perez." napisał/a:

No to ma?o wiesz, bo si?dz? w Pawn ok 3,5 lat, i u?ywam foreacha od ok 2, na pewno jest tutaj wi?cej os?b kt?re z tego korzystaj? tylko po prostu si? nie ujawniaj?.


Wiem du?o. To, ile siedzisz w pawn nie znaczy, ?e u?ywasz rozszerzonych funkcji od Y_Less'a czy Slice'a. Jestem w 100% pewien, ?e nie znajdziesz 10 os?b na tym forum, kt?re wymieni? 5 funkcji od foreach bez zagl?dania w temat na forum sampa. Kto tutaj ma si? ujawni?? Nie b?d? ?mieszny. Ka?dy kto mia? si? ujawni? ju? si? dawno ujawni? i st?d znikn??.

"Perez." napisał/a:

G?upie gadanie, a jak my?lisz p?tle foreach y_less'a nie wzoruj? si? for'em? wszystko wzoruj? si? kodem g??wnym SA:MP'a


No tak, wzoruje si? to na podstawowych funkcjach od sampa. Co z tego, je?li ka?dy u?ywa zwyk?ego for'a, a nie p?tlami foreach, kt?re s? po prostu bardziej optymalne. Tutaj nikt si? nie przejmuje optymalno?ci?, nawet osoby znajduj?ce si? w supporcie. Wa?ne, aby dzia?a?o, a optymalno?? jest dla nich po prostu nie wa?na.

@down

Co do ludzi znaj?cych si? na pawn masz racj?, nie ma tutaj nikogo kto ogarnie cho? 10% z ca?o?ci (ja te? nie ogarn?), ale w kilku zdaniach ?le mnie zrozumia?e?, ale nie b?d? ci?gn?? tego tematu. btw.

Ostatnio zmieniony przez Combacior 2012-12-04, 15:53, w całości zmieniany 1 raz  
Postaw piwo autorowi tego posta
 

 
Wysłany: 2012-12-04, 15:36


Perez.







Wiek: 31
Na forum: 4947 dni
Posty: 3
Nick w MP: Perez.

Piwa: 6

Respekt: 38,7

Ostrzeżeń: 100%
Cytat:

Szybciej si? wykona ta, w kt?rej jest mniej kodu. Poda?em przyk?ad, dla kt?rego kod jest taki sam. Nie wiesz to nie krytykuj.


B?d? krytykowa?, moja wina ?e nie umiesz jej przyj??? to wyjd? na pole.
Nie b?dzie si? szybciej wykonywa?a ta w kt?rej jest mniej kodu, p?tla for to jedna linijka, a w niej kilkana?cie znak?w, nie ma r??nicy, uwierz mi ?e tworz?c now? zmienn? przypisuj?c? warto?? GetMaxPlayers() a potem daj?c to jako miejsce zap?tlenia, wykona si? szybciej ni? samo pobieranie od tak, bez zmiennej, je?eli nie wiesz o czym m?wi? to masz tu o:

// Szybsza
for(new i, x = GetMaxPlayers(); i != x; i++)
// Wolniejsza
for(new i; i != GetMaxPlayers(); i++)

Cytat:

Czy ja napisa?em, ?e s?u?y tylko do p?tli? Powt?rzy?e? to samo, co napisa?em o przydatnych funkcjach.

Nie napisa?e? ?e mo?e zast?powa? tablice, po za tym przydatne funkcje? jest ich kilka(na?cie), wi?kszo?ci z nich nie u?ywasz, a wi?ksza z nich dotyczy "tablic z foreach" kt?re tworzymy prawie tak samo jak ze zwyk?ymi tablicami tylko u?ywamy < > i argument za "new".

Cytat:

Wiem du?o. To, ile siedzisz w pawn nie znaczy, ?e u?ywasz rozszerzonych funkcji od Y_Less'a czy Slice'a. Jestem w 100% pewien, ?e nie znajdziesz 10 os?b na tym forum, kt?re wymieni? 5 funkcji od foreach bez zagl?dania w temat na forum sampa. Kto tutaj ma si? ujawni?? Nie b?d? ?mieszny. Ka?dy kto mia? si? ujawni? ju? si? dawno ujawni? i st?d znikn??.

Nie b?d? taki do przodu, bo Ci? sznur?wki wyprzedz?, wiem ?e to forum to 99% u?ytkownik?w kt?rzy zak?adaj? pseudole, skrypty z neta i inne pierdo?y, ale nie znaczy ?e ten 1% z tych wszystkich u?ytkownik?w nie wie jak u?ywa? foreach i jakie s? w nim funkcj?, prosz? Ci?, zajrzyj na p.pl, tam jest pe?no os?b, kt?re znaj? si? o wiele lepiej od tego Supportu co tutaj jest, od nas, na przyk?ad takie osoby jak Gamer_Z, Terminator3 czy kilka innych ;) Prawda taka - Nie ma tutaj dobrych programist?w, a jak s? to si? kryj?, pomagaj? jedynie Ci co g?w***ko zrobili i g?wienko potrafi?.

Cytat:

No tak, wzoruje si? to na podstawowych funkcjach od sampa. Co z tego, je?li ka?dy u?ywa zwyk?ego for'a, a nie p?tlami foreach, kt?re s? po prostu bardziej optymalne. Tutaj nikt si? nie przejmuje optymalno?ci?, nawet osoby znajduj?ce si? w supporcie. Wa?ne, aby dzia?a?o, a optymalno?? jest dla nich po prostu nie wa?na.

Nie wiesz na czym opieraj? si? includy Y_Less'a, te? na forach, nie b?d? ?mieszny, twierdzisz ?e foreach jest zbudowane na innej zasadzie ni? for?
Co do Support Teamu, sram na nich, taka prawda, jak patrz? na ich coniekt?re posty i skrypty(przyk?adowo Aktualno?ci OldShool) to ?mia? mi si? chc?, kod badziewny, w dodatku idzie go skr?ci? do kilkunastu linijek, w dodatku tworzy wielkie tablice i to kilka lol ch?tnie bym oceni? ten skrypt, a zreszt? nawet to zaraz zrobi?, bo to co wydajecie na to forum to zabija wasze serwery, ludzie, ogarnijcie si?, Administracja na Support?w powinna dawa? do?wiadczone osoby a nie osoby kt?re nie potrafi? obs?ugiwa? si? bardziej zaawansowanymi pluginami.

Podpis
Zaawansowany w PAWN.

Optymalizacja gamemodów/skryptów oraz pisanie nowych systemów - więcej info na PW.
Postaw piwo autorowi tego posta
 

 
Wysłany: 2012-12-04, 20:12


Camon91







Wiek: 34
Na forum: 4936 dni
Posty: 17
Nick w MP: [SP]Camon_GDW

Piwa: 3

Respekt: 50

Foreach pasuje pod bardziej z?o?one p?tle. Jest moim zdaniem szybsza i wydajniejsza.

Postaw piwo autorowi tego posta
 

 
Wysłany: 2012-12-04, 21:18


Combacior







Wiek: 29
Na forum: 5796 dni
Posty: 1516

Piwa: 2161

Respekt: 1060
Respekt: 1060

Ostrzeżeń: 20%
C?? za profesjonalizm. Sk?d skopiowa?e? te dwa zdania?

Co do tematu, to jak nie znasz si? ma foreach, to radz? u?ywa? zwyk?ej p?tli for

Postaw piwo autorowi tego posta
 

 
Tagi: pętla
Anonymous





Na forum: 245 dni
Posty: 1



Anonymous Koniecznie zajrzyj na:






Skocz do:  
Wyświetl posty z ostatnich:   
GTAONLINE.PL » JĘZYKI PROGRAMOWANIA » PAWN Ten temat jest zablokowany bez możliwości zmiany postów lub pisania odpowiedzi

Nie możesz pisać nowych tematów
Nie możesz odpowiadać w tematach
Nie możesz zmieniać swoich postów
Nie możesz usuwać swoich postów
Nie możesz głosować w ankietach
Dodaj temat do Ulubionych
Wersja do druku