Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут
закрыты.
Читайте
требования к создаваемым темам.
-
arthur2
-
- Продвинутый гуру
-
-
- Сообщения: 1688
- Зарегистрирован: 23.01.2008 (Ср) 14:35
arthur2 » 16.03.2014 (Вс) 22:20
С переменными простых типов более-менее понятно - все объявленные на уровне процедуры переменные складываются в стек, а на выходе из стека вынимаются. А как обстоит дело со строками и массивами? На выходе из процедуры компилятор что-то дописывает, что очищает данные? или как?
Артур
-
The trick
-
- Постоялец
-
-
- Сообщения: 781
- Зарегистрирован: 26.06.2010 (Сб) 23:08
The trick » 16.03.2014 (Вс) 22:44
Что именно не понятно? Насколько я знаю локальные строки очищаются посредством вызовом __vbaFreeStr, которая вызывает SysFreeString, массивы через __vbaAryDestruct которая вызывает SafeArrayDestroyData, SafeArrayDestroyDescriptor
UA6527P
-
arthur2
-
- Продвинутый гуру
-
-
- Сообщения: 1688
- Зарегистрирован: 23.01.2008 (Ср) 14:35
arthur2 » 17.03.2014 (Пн) 5:17
Спасибо, теперь вроде понятно
Мог бы и сам догадаться...
Артур
Вернуться в Visual Basic 1–6
Кто сейчас на конференции
Сейчас этот форум просматривают: SemrushBot и гости: 44