Всем привет, я с одним знакомым долго спорил что лучше использовать 1 глобальный стринг для каждого игрока с максимальным размером или же создавать разные стринги с разными размерами в разных пабликах?
Приведу пример:
В моем случае создаем массив с 1024 размером для каждого игрока
И без проблем используем его во всем моде пример:Код:new string[MAX_PLAYERS][1024];
и так далее по всему моду!Код HTML:format(string[playerid], 33, "Hello, State, I'm %s", name(playerid)); SendClientMessageToAll(-1, string[playerid]);
В случае моего знакомого мы должны создать в каждом паблике локальные массивы с разными размерами и использовать их, только там где мы их создали
Приведу пример:
и т. д. мы создаем разные массивы с разными размерами в разных пабликах, а ведь мы знаем В PAWN изначальный размер стека (STK) - 16384 байт, не больше, не меньшеКод:public OnPlayerText(playerid, text[]) { new string[33]; format(string, sizof(string), "Hello, State, I'm %s:%s", name(playerid),text)); SendClientMessageToAll(-1, string); return false; }
и в моде не один такой массив
если посчитать, у меня установлена 200 maxplayers, значит максимально 200*1024
и в случае моего друга, в моде примерно 30 пабликов которых мы используем, и создаем не 1 массив в каждом паблике примерно возьмем 10, ставим размер всегда по разному так что возьмем 256 ок 30*10*256*200(игроки которые вызывают эти функции)
Ну результат очевиден...
Я хотел бы узнать ваши мнение что вы считаете об этом, может быть я ошибаюсь где то? Какой бы вариант вы выбрали бы?