模块化字段访问修饰符 Dim、全局、公共和私有之间的区别是什么?

在 VB6/VBA 中,可以在特定 SubFunction方法之外声明模块级变量。我以前在模块中使用过 PrivatePublic,对它们的理解是这样的:

  • Public-对模块内部的所有代码和模块外部的所有代码可见,实质上使其全局化。
  • Private-只对模块内的代码可见。

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

150632 次浏览

DimPrivate的工作原理是相同的,尽管通常的惯例是在模块级别使用 Private,在 Sub/Function 级别使用 DimPublicGlobal在功能上几乎完全相同,但是 Global只能在标准模块中使用,而 Public可以在所有上下文(模块、类、控件、表单等)中使用。 Global来自旧版本的 VB,可能是为了向后兼容而保留,但是已经被 Public完全取代。