【发布时间】:2009-08-27 08:22:49
【问题描述】:
我正在 VB6 中处理带有公共变量的巨大对象的遗留项目。 我想将这些公共变量转换为私有变量/属性组合。 有没有一些工具可以让我进行这些转换?(最好是一次类中的所有变量)
谢谢
【问题讨论】:
标签: class properties vb6 refactoring
我正在 VB6 中处理带有公共变量的巨大对象的遗留项目。 我想将这些公共变量转换为私有变量/属性组合。 有没有一些工具可以让我进行这些转换?(最好是一次类中的所有变量)
谢谢
【问题讨论】:
标签: class properties vb6 refactoring
不要进行转换,不需要。 VB 编译器会自动为所有公开的类(即在 COM DLL 中导出的所有类)执行此操作,并且所有其他字段都不需要,因为这些字段仅在内部使用,并且用户的字段和属性之间没有区别。
VB6 是唯一能做到这一点的语言,它根本不允许公共字段,并隐式转换它们。
回顾一下:VB6 中的公共变量没有任何问题,因为公共变量通常的缺点不适用于它们。特别是,它们不会破坏封装。
【讨论】:
MZ-Tools 是一个免费插件,具有允许将公共变量转换为属性的功能。
【讨论】:
我不知道任何用于 VB6 的重构工具,但我会通过编写脚本来扫描源文件、搜索与“Public Dim ...”匹配的行并将这些行替换为适当的行来解决问题“Private Dim ...”和属性访问器。
【讨论】:
Public X 或 Public X As sometype 是合法的。