В чем разница между Dim, Global, Public и Private в качестве модификаторов модульного поля?

В VB6 / VBA вы можете объявлять переменные уровня модуля вне определенного метода Sub или Function . Я использовал Private и Public перед внутренними модулями и понимаю их так:

  • Public – видимый для всего кода внутри модуля и всего кода вне модуля, что делает его глобальным.
  • Private – видимый только для кода внутри модуля.

Я заметил, что вы можете использовать Dim и Global как модификаторы для модульных переменных. Являются ли Dim и Global отличными от Private и Public , соответственно, при использовании в качестве модификаторов доступа на модульных полях? Если да, то как они отличаются?

Dim и Private работают одинаково, хотя общим соглашением является использование Private на уровне модуля и Dim на уровне Sub / Function. Public и Global почти идентичны по своей функции, однако Global можно использовать только в стандартных модулях, тогда как Public можно использовать во всех контекстах (модули, classы, элементы управления, формы и т. Д.). Global более старые версии VB и, вероятно, сохраняется для обратной совместимости, но был полностью заменен Public .

Interesting Posts

Настройка Media Center не будет завершена для просмотра телевизора

Загружаемый шрифт на firefox: неправильный URI или межсайтовый доступ не разрешен

Java PDF Viewer

Как размер файла на диске будет 0 байтов, когда в нем есть данные?

Различия в булевых операторах: & vs && и | vs ||

В чем причина этих «мертвых» пикселей, которые видны даже тогда, когда экран выключен?

Восстановление образа Windows 7 на другой жесткий диск

Как вы автоматически изменяете размеры ячеек в Excel?

Как открыть pdf-файл в Windows Phone 8?

Проблема с реальным устройством с использованием векторного изображения в android. SVG-андроид

Полностью отключить UAC в Windows 10

Почему размер раздела подкачки должен быть вдвое меньше размера ОЗУ?

Найти расстояние между двумя точками, используя широту и долготу в mysql

Почему медленная инструкция цикла? Не удалось ли Intel эффективно внедрить его?

Каков самый простой способ шифрования каталога? (На Ubuntu)

Давайте будем гением компьютера.