Warning 239

Započeo .Drakula., Jun 05, 2022, 12:57:10 POSLE PODNE

prethodna tema - sledeća tema

0 članova i 2 gostiju pregledaju ovu temu.

Da li ima veze da li je malo slovo ili veliko.
imam sa velikim slovom:

PlayerPlaySound(i, 1056, X, Y, Z);
GetPlayerPos(playerid, X, Y, Z);
Streamer_UpdateEx(playerid, X, Y, Z);

Ako bi zamenio sa malim slovom, da li bi bilo isto ili ne.?


Citat: Galardo poslato Jun 11, 2022, 12:50:33 POSLE PODNE
Zavisi kako si imenovao varijable.
new Float:X, Float:Y, Float:Z;
Jer ih koristim samo za PlayerPlaySound i GetPlayerPos

Ukoliko su ti definisani globalno (znaci izvan funkcija) onda ih definisi localno to jest unutar funkcija gde ih koristis.

Citat: Deleted User poslato Jun 13, 2022, 20:16:01 POSLE PODNE
Ukoliko su ti definisani globalno (znaci izvan funkcija) onda ih definisi localno to jest unutar funkcija gde ih koristis.
Tacno tako, ja sam ih definisao globalno za celu skriptu.
new Float:X, Float:Y, Float:Z;
Kada sam definisao unutar svake funkcije gde koristim nema warninga.
Hvala..

A da pitam, zanima me jer ovako ima bas puno linija gde ih definisem za svaku funkciju posebno..
Zar ne bih mogao nekako drugacije da definisem za celu skriptu.
Primer:
new Float:igracX, Float:igracY, Float:igracZ;

//svuda po skripti
GetPlayerPos(playerid, igracX, igracY, igacZ);


Da li bi tako nesto moglo, jer je ovako bas mnogo jedna te ista definicija za istu stvar.

Mnogo ili ne, praksa je da se memorija oslobadja ako ti ne treba. Ako definises globalno, memorija se zauzme i oslobadja ka kraju programa to jest kad izadjes (zatvoris server). Ako definises u funkciji, zauzima se kad pozoves funkciju a oslobadja se na kraj funkcije.

U sustini, sasvim je normalno da ti se desi da moras iste stvari definisati u vise funkcija.

Direktan odgovor na tvoje pitanje, mozes i globalno da definises, samo ih imenuj unikatno da nema konflikt negde sa drugim promenivima. Doduse ja iskreno ne preporucijem takav nacin iako nije ni pogresan i u odredjenim slucajevima moze biti i optimizacija koda.