Dim,Global,Public和Private作为模块化字段访问修饰符有什么区别?
在VB6 / VBA中,可以在特定的Sub
或Function
方法之外声明模块级别的variables。 我在模块内部使用了Private
和Public
,并且像这样理解它们:
-
Public
– 对模块内的所有代码和模块外的所有代码都是可见的,实质上使其成为全局代码。 -
Private
– 仅对模块内部的代码可见。
我注意到你可以使用Dim
和Global
作为模块化variables的修饰符。 Dim
和Global
分别与Private
和Public
不同,当用作模块化字段的访问修饰符时? 如果是这样,他们有什么不同?
Dim
和Private
工作原理是一样的,尽pipe通用惯例是在模块级别使用Private
,而在Sub / Function级别使用Dim
。 Public
和Global
在function上几乎完全相同,但是Global
只能用在标准模块中,而Public
可以用在所有的上下文中(模块,类,控件,表单等等)。 Global
来自VB的旧版本,很可能保留为了向后兼容,但已经完全被Public
取代。