Operacje bitowe vs Operacje arytmetyczne
Indoor
18.03.2016
Witam,
Chciałbym zapytać co jest lepsze:
if(player_questy[kid] == 1){ //kod }
Czy:(v2*)
#define ONE (1<<0) if(player_questy[kid] == ONE){ //kod }
Wyczytałem kiedyś na forum, że operacje bitowe są lepsze, zużywają mniej pamięci więc kod powyżej(v2) powinien być lepszy według mnie.
Pozdrawiam.
*Nie jestem pewien czy dobrze to napisałem
Użytkownik Indoor edytował ten post 18.03.2016 23:38
grankee
19.03.2016
To tak jak byś się zapytał, czy lepiej użyć garnka czy patelni. Każde służy do czegoś innego, ale w pewnych okolicznościach na siłę może być używane zamiennie, chociaż nie ma to większego sensu.
W tutorialu o operacjach bitowych opisałem po ludzku kwestię operacji bitowcych i do czego można ich użyć.
http://amxx.pl/topic...we/#entry715165
W PAWN mogą one posłużyć najprędzej do przechowywania wielu wartości logicznych w jednej zmiennej przez co nie musimy tworzyć ich kilku/nastu/dziesięciu co pozwala zaoszczędzić pamięć. Jeśli chcesz tylko przypisać jakąś wartość do zmiennej to operacje bitowe nie mają tu racji bytu.