1. Система на таймере (где-то 2-3 сек).
  2. Стоит выбор либо 10 глобалок + 3 значения из хэша, либо 9 значений из хэша (за каждый тик таймера будет 5-7 обращений к хэшу).
Ответ, казалось бы, очевиден.
Но дело в том, что использоваться система будет крайне редко (вероятно, всего пару раз за несколько часов игры).

Принятый ответ

Они есть не просят, хоть 10к переменных держи "на всякий случай". Удобно с хешем - делай им. Когда у тебя итераций мало, выбор чисто за тобой.

Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
0
16
6 лет назад
Отредактирован avuremybe
0
Astra, затем, что данные туда заносятся только на период использования системы и уничтожаются по завершению ее работы.
А глобалок у меня и так тьма, поэтому не особо хочется плодить еще 10 массивов, которые будут использованы 1-2 раза за игровую сессию. А может и не будут.
0
16
6 лет назад
Отредактирован DracoL1ch
0
Они есть не просят, хоть 10к переменных держи "на всякий случай". Удобно с хешем - делай им. Когда у тебя итераций мало, выбор чисто за тобой.
Принятый ответ
0
16
6 лет назад
Отредактирован avuremybe
0
DracoL1ch, разве? Я думал под них выделяется память в начале игры...
Я и вопрос задал опираясь на это...
0
16
6 лет назад
0
4 байта, в 1 кб уместится 256 переменных, в 1 мб 262144 переменых. Все еще хочешь экономить?
0
16
6 лет назад
Отредактирован avuremybe
0
DracoL1ch, т.е. мои 11 массивов это ~3 МБ памяти?
2
23
6 лет назад
2
чем вы жалеете переменых если они не локальные, а так код оптимизируй важнее чем переменную
0
16
6 лет назад
0
И все таки, дайте ответ.
Под массив резервируется 64 кб памяти?
4
16
6 лет назад
4
массив просит столько места, сколько индекс у него. максимальный индекс 8к == 32кб на массив максимум. если же ты используешь, допустим, индексы менее 100, то будет 100*4 байт выделено.
Каждая строка кода пожирает намного больше и памяти, и времени процессора, мастер верно сказал. Проблема не в количестве переменных, а в том, как с ними обращаются
0
16
6 лет назад
Отредактирован avuremybe
0
DracoL1ch, а разве индекс массива не от -8192 до 8192 ?
Это же 16.4к => 64 кб.

А по сабжу - спасибо большое!
Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
Чтобы оставить комментарий, пожалуйста, войдите на сайт.