Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Вопрос знающим работу компьютера / 10 сообщений из 10, страница 1 из 1
11.03.2011, 08:59
    #37158895
vallot
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос знающим работу компьютера
Я все переменные объявляю в модуле, как Public.
Но можно объявлять переменные и в каждой процедуре, как Dim.
У меня такой вопрос, одинаковую память занимают одни те же переменные в Public и в Dim?
...
Рейтинг: 0 / 0
11.03.2011, 09:17
    #37158910
Akina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос знающим работу компьютера
Да.
...
Рейтинг: 0 / 0
11.03.2011, 09:22
    #37158919
vikttur
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос знающим работу компьютера
vallot, по объему памяти не знаю, логически - различий не должно быть. По времени хранения различия есть.
Public видима для всех процедур проекта и хранится в памяти до закрытия проекта, Dim - только в данной процедуре и умирает после окончания процедуры.
Нужно больше обращать внимание не на объем памяти, а на то, что область видимости переменных важна для корректной работы проекта.
...
Рейтинг: 0 / 0
11.03.2011, 09:30
    #37158932
vallot
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос знающим работу компьютера
Как раз по времени меня и интересовал. Отработал и освободил место!
Спасибо!
...
Рейтинг: 0 / 0
11.03.2011, 09:42
    #37158944
The_Prist
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос знающим работу компьютера
vallot,

добавлю(не очень важно, но может пригодится когда): голобальные переменные инициализируются в проекте быстрее, чем локальные. Т.к. инициализируются один раз - при открытии проекта. А локальные инициализируются каждый раз при компиляции процедуры - т.е. перед каждым её выполнением.
...
Рейтинг: 0 / 0
11.03.2011, 23:37
    #37160651
AndreTM
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос знающим работу компьютера
The_Prist,
Ну вспомним же ещё холивары ВБА - "не забудьте инициализировать счётчики локально".
Хотя лучше помнить о SET xxx ... xxx = Nothing - это высвобождает память правильнее.
...
Рейтинг: 0 / 0
14.03.2011, 20:10
    #37164544
С0ВЕСТЬ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос знающим работу компьютера
vallotЯ все переменные объявляю в модуле, как Public.
Но можно объявлять переменные и в каждой процедуре, как Dim.
У меня такой вопрос, одинаковую память занимают одни те же переменные в Public и в Dim?

Везде одинаково
...
Рейтинг: 0 / 0
14.03.2011, 20:12
    #37164548
vikttur
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос знающим работу компьютера
СОВЕСТЬ проснулась? :)
...
Рейтинг: 0 / 0
14.03.2011, 20:35
    #37164574
Akina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос знающим работу компьютера
AndreTMХотя лучше помнить о SET xxx ... xxx = Nothing - это высвобождает память правильнее.
КАК ПРАВИЛО высвобождает правильно. Либо, при определённых условиях, приводит к утечкам памяти.
...
Рейтинг: 0 / 0
16.03.2011, 00:08
    #37166687
AndreTM
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос знающим работу компьютера
Akina,

Полностью согласен. Но предпочитаю всё же помнить и использовать.
А то ТС, может, миллионное фибо-число рассчитывает. Рекурсией. И с пересозданием формы
...
Рейтинг: 0 / 0
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Вопрос знающим работу компьютера / 10 сообщений из 10, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]