Dim,Global,Public和Private作为模块化字段访问修饰符有什么区别?

时间:2010-09-28 17:44:41

标签: vba vb6 scope access-modifiers

在VB6 / VBA中,您可以在特定SubFunction方法之外声明模块级变量。我在内部模块之前使用了PrivatePublic,并按照这样理解它们:

  • Public - 模块内的所有代码和模块外的所有代码都可见,基本上使其成为全局代码。
  • Private - 仅对模块内的代码可见。

我注意到您可以使用DimGlobal作为模块变量的修饰符。在用作模块化字段的访问修饰符时,DimGlobal是否分别与PrivatePublic不同?如果是这样,它们有何不同?

1 个答案:

答案 0 :(得分:85)

DimPrivate的工作方式相同,但通常的惯例是在模块级别使用Private,在子级/功能级别使用DimPublicGlobal的功能几乎相同,但Global只能用于标准模块,而Public可用于所有上下文(模块,类,控件) ,表格等。)Global来自旧版本的VB,可能是为了向后兼容,但已被Public完全取代。