![]()
AlexKARASb
Learning cpp
![]() ![]() offline
Опыт:
22,103Активность: |
Использование реальных структуры либо локалок
Добрый день всем.
У меня возник вопрос : Выгоднее что использовать в таком плане(суть вопроса после *//*) при присвоеном юните в структуре локалки real, или же создать заранее в структуре реальные и потом использовать
|
![]() |
#1
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
![]()
Doc
![]() offline
Опыт:
63,163Активность: |
Первое имхо. |
![]() |
#2
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
![]()
AlexKARASb
Learning cpp
![]() ![]() offline
Опыт:
22,103Активность: |
DoctorGester, аргументируй плз просто хочется узнать выгоднее лок в большом кол-ве или же присвоение к одной но много раз |
![]() |
#3
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
![]()
Doc
![]() offline
Опыт:
63,163Активность: |
Зачем присваивать много раз? Сделал то что в первом комментарии 1 раз а потом используешь. Преимущество в том что не требуется памяти для инициализации переменных. |
![]() |
#4
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
![]()
AlexKARASb
Learning cpp
![]() ![]() offline
Опыт:
22,103Активность: |
про новые ты не забыл? лок. пер. инициализации тоже требует, вот к чему клоню... |
![]() |
#5
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
![]()
Doc
![]() offline
Опыт:
63,163Активность: |
Не понимаю тебя. Структура это глобалки. А глобалки инициализируются 1 раз. Я вообще про память отводящуюся на объявление переменной. |
![]() |
#6
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
![]()
AlexKARASb
Learning cpp
![]() ![]() offline
Опыт:
22,103Активность: |
смотри, на глобалки 1 раз отвелась память а на локалки будет отводится каждый раз нужное кол-во памяти и позже удалятся какой из вариантов выгоднее с точки зрения jass собственно это пытаюсь спросить |
![]() |
#7
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
![]()
Doc
![]() offline
Опыт:
63,163Активность: |
Первый вариант же. Как я и говорил. |
![]() |
#8
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
![]()
agentex
![]() offline
Опыт:
34,834Активность: |
обращение к глобалке медленней, но не требуется инициализация. незнаю, я юзаю локалки в периодических функциях и все норм. (токо разумное количество естественно) |
![]() |
#9
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
![]()
Скайнет
Kicked by ZlaYa1000
![]() ![]() offline
Опыт:
8,234Активность: |
объявление локалки - это время на объявление. и если тебе актуалено время выполнения, то локалки не подходят |
![]() |
#10
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
![]()
AlexKARASb
Learning cpp
![]() ![]() offline
Опыт:
22,103Активность: |
vsparker, актуально мне: память потраченная на то или иное |
![]() |
#11
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
![]()
Скайнет
Kicked by ZlaYa1000
![]() ![]() offline
Опыт:
8,234Активность: |
при нормальном использовании в обоих случаях никаких проблем с памятью быть не должно |
![]() |
#12
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
![]()
agentex
![]() offline
Опыт:
34,834Активность: |
о памяти не беспокойся, после завершения работы функции локалки удаляются из стека ну с глобалками и так ясно |
![]() |
#13
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
![]()
AlexKARASb
Learning cpp
![]() ![]() offline
Опыт:
22,103Активность: |
|
![]() |
#14
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
![]()
SRes
1110101000
![]() ![]() offline
Опыт:
9,997Активность: |
По логике локалки должны быть не намного медленнее, а раз вы говорите, что обращение к глобалкам медленнее - значит и локалки работают быстрее, т.к. стек расширяется всего одной машинной командой, а значит что мы теряем чуть-чуть времени вначале, зато потом получаем профит каждый раз при вызове.
Это логика, утверждать ничего не буду, ибо никто (или все-таки кто-то?) не знает ТОЧНОЙ и единственно правильной структуры работы джасса. (Конечно, я имею ввиду софорумцев) |
![]() |
#15
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
![]()
adic3x
![]() offline
Опыт:
108,439Активность: |
ничтожно мало, позволяет его полностью игнорировать знают крок и я (ну и вд немного видел) - ваша гипотеза совершенно верна. |
![]() |
#16
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
![]()
AlexKARASb
Learning cpp
![]() ![]() offline
Опыт:
22,103Активность: |
|
![]() |
#17
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
![]()
adic3x
![]() offline
Опыт:
108,439Активность: |
структуры как средство хранения данных нужны когда вам надо ассоциировать большой кусок данных с индексом, т.е. например функция принимает не 16 аргументов, а 1 - указатель на структуру
и если говорить честно - то структуру надо создавать тоже т.е. это медленно |
![]() |
#18
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
![]()
bee
vjass.optimizer
![]() ![]() offline
Опыт:
16,615Активность: |
при периодическом передвижении юнита, если вдруг требуется проводить действия над группой в известных меняющихся координатах то я не создаю в функции при каждом ее вызове группу а создаю глобалку и называю ее tempG. потом когда надо например нанести урон группе в x\y то я заполняю группу войсками провожу неоходимые операции и вконце очищяю ее но не удаляю (!) мое мнение - так быстрее всего. так же лучше не локалить handle в функции а использовать только переменные которые не надо обнулять. |
![]() |
#19
+1/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
![]()
ZeToX2007
![]() ![]() offline
Опыт:
7,009Активность: |
~bee, это ты к чему ?
~AlexKARASb, можно юзать и без структур Код:
// забудьте о глабалс - прим. адик Отредактировано ADOLF, 11.05.2010 в 00:44. |
![]() |
#20
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|