Модераторы: Akina
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Объект и Nothing, Когда это нужно 
V
    Опции темы
ИгнатьевАлексей
Дата 8.11.2020, 17:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 369
Регистрация: 18.11.2005

Репутация: нет
Всего: 3



Друзья, давно программирую на VBA, но так и не понимаю до конца.
Объясните, наконец, пож-та!

Типовая ситуация:

1. Я объявляю объектную переменную, например myBestBook типа "Excel.Workbook";
2. Инициализирую, т.е. загружаю в нее книгу;
3. Работаю с этой книгой, поработал, сохранил;
4. Завершаю работу и (как учили) делаю 
Код

Set myBestBook = Nothing
  smile 

Вот зачем я это делаю? Высвобождаю оперативку....
А если не сделаю, VB сам не освободит эту память? 


--------------------
Vingrad - FOREVER !!! 

"Как вы яхту назовете - так она и поплывет!" 
 Капитан Врунгель 
PM MAIL   Вверх
Akina
Дата 8.11.2020, 20:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


Профиль
Группа: Модератор
Сообщений: 20570
Регистрация: 8.4.2004
Где: Зеленоград

Репутация: 34
Всего: 453



Цитата(ИгнатьевАлексей @  8.11.2020,  18:17 Найти цитируемый пост)
А если не сделаю, VB сам не освободит эту память? 

Нет. Объект существует, пока существует хотя бы одна ссылка на него.


--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
ИгнатьевАлексей
Дата 9.11.2020, 17:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 369
Регистрация: 18.11.2005

Репутация: нет
Всего: 3



Akina
Спасибо! Однако хочу понять до конца.
Я создал этот объект. Я на него ссылался. Программа завершена. А ссылки остались?
Или это так просто не объяснить? Надо глубже изучать эти процессы?


--------------------
Vingrad - FOREVER !!! 

"Как вы яхту назовете - так она и поплывет!" 
 Капитан Врунгель 
PM MAIL   Вверх
Akina
Дата 10.11.2020, 07:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


Профиль
Группа: Модератор
Сообщений: 20570
Регистрация: 8.4.2004
Где: Зеленоград

Репутация: 34
Всего: 453



Цитата(ИгнатьевАлексей @  9.11.2020,  18:09 Найти цитируемый пост)
Я создал этот объект. Я на него ссылался. Программа завершена. А ссылки остались?
Или это так просто не объяснить?

Зависит от того, какой объект.

Если, скажем, этот какой-то встроенный объект (ну... скажем, окно) - программа его, конечно, полностью выгрузит при завершении.
Если это, к примеру, объект RegExp - программа при завершении даст ему команду "Ты не нужен, завершайся", а уж завершится он или нет - это его дело (точнее, дело WScript).
Если же это, скажем, объект Excel.Application, то программа выгрузит всё, связанное в объектом, а запущенный для его обслуживания COM-сервер, скорее всего, останется в системе.


--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "VB6"
Akina

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по VB обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • Используйте теги [code=vb][/code] для подсветки кода. Используйтe чекбокс "транслит" (возле кнопок кодов) если у Вас нет русских шрифтов.


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Akina.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | VB6 | Следующая тема »


 




[ Время генерации скрипта: 0.1536 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.