существует где-то список какие конкретно типы переменных надо обнулять в конце тригера, а какие нет? а то по статьям упоминается всего несколько типов переменных, а об остальных мне ничего не известно ;((

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

Не надо обнулять:
  • integer
  • real
  • string
  • boolean
Кроме того, нельзя использовать boolexpr Example = null, обязательно используйте boolexpr Example returns true
`
ОЖИДАНИЕ РЕКЛАМЫ...
2
21
9 лет назад
Отредактирован awesomesk1ll
2
юнитов, точки, эффекты. Еще иногда строковые параметры, например в мультибоарде. Это вроде основное.
2
0
16
9 лет назад
0
Buulichkaa, да я то читаю, но не на столько много, чтобы узнать все самому, не задавая вопросов (:
тему пока не закрываю, может еще кто добавит чего-то полезного.
2
15
9 лет назад
2
Все хендлы, кроме текстагов и плееров, у меня такая инфа.
0
28
9 лет назад
0
Tobi123, тексттаги тоже надо
2
4
9 лет назад
Отредактирован Странный Парень
2
Не надо обнулять:
  • integer
  • real
  • string
  • boolean
Кроме того, нельзя использовать boolexpr Example = null, обязательно используйте boolexpr Example returns true
Принятый ответ
0
28
9 лет назад
0
Странный Парень, а почему нельзя юзать null?
я всегда юзал и пока ничего не случилось
0
4
0
nvc123, утекает
0
28
9 лет назад
0
Странный Парень, null утекает?
впервые слышу
ещё player не надо обнулять
0
4
0
nvc123, ещё Адольф говорил про эту утечку. В cJass он сделал автокоррекцию, но в чистом редакторе оно течёт.
0
16
9 лет назад
0
локальные переменные обнулять вообще не нужно, как я понял. только глобальные. верно?
0
29
9 лет назад
0
avuremybe,
нет не верно
0
16
9 лет назад
0
16GB, блин, а у меня после прочтения ссылок приведенных выше сложилось именно такое мнение...
Именно поэтому, после работы с объектом, его надо не только удалять, но и обнулять все хендлы, ссылающиеся на нашего юнита. Если этого не сделать, они будут "висеть" в таблице хендлов и не только засорять память, но и замедлять скорость доступа к этой таблице.
Исключение – локальные переменные, которые являются параметрами функции. Они удаляются автоматически после выхода из функции.
0
29
9 лет назад
0
которые являются параметрами функции
0
16
9 лет назад
Отредактирован avuremybe
0
16GB, ну является она параметром функции (переменная - это же ссылка, не? какие параметры?), а обнулять мне ее надо или не надо?
4
4
9 лет назад
Отредактирован Странный Парень
4
function Sample takes multiboarditem ItemOne, unit ItemTwo, integer ItemThree returns integer
    local multiboard ItemFour
    local real ItemFive
endfunction
  • ItemOne - локальная переменная, является параметром функции, не обнуляется, так как является параметром
  • ItemTwo - локальная переменная, является параметром функции, не обнуляется, так как является параметром
  • ItemThree - локальная переменная, является параметром функции, не обнуляется, так как является параметром
  • ItemFour - локальная переменная, не является параметром функции, подлежит обнулению, так как не входит в список выше
  • ItemFive - локальная переменная, не является параметром функции, не обнуляется, так как входит в список выше
0
16
9 лет назад
0
Странный Парень, спасибо, теперь понял.
всем спасибо за ответы, тему закрываю.
Чтобы оставить комментарий, пожалуйста, войдите на сайт.