В чем разница между Dim, Global, Public и Private в качестве модификаторов доступа к модульному полю?
в VB6 / VBA вы можете объявлять переменные уровня модуля вне определенного Sub или Function метод. Я использовал Private и Public прежде чем внутри модулей и понять их так:
Public- видимый для всего кода внутри модуля и всего кода вне модуля, что делает его глобальным.
Private- виден только для кода внутри модуля.
я заметил, что вы можете использовать Dim и Global как модификаторы для модулярных переменных. Являются Dim и Global отличается от Private и Public, соответственно, при использовании в качестве модификаторов доступа на модульных полях? Если да, то чем они отличаются?
1 ответ:
DimиPrivateработают одинаково, хотя общее соглашение заключается в использованииPrivateна уровне модуля, иDimна уровне Sub / Function.PublicиGlobalпочти идентичны в своей функции, однакоGlobalможет использоваться только в стандартных модулях, тогда какPublicможно использовать в любом контексте (модули, классы, регулирование, формы и т. д.)Globalисходит из более старых версий VB и, вероятно, был сохранен для обратной совместимости, но был полностью замененPublic.
Comments