VB6:禁用变体

Mui*_*uis 7 compiler-construction vb6 variables strict variant

我有一个大的VB6项目,其中很多变量没有明确定义的类型,因此它们自动默认为Variant类型.手动找到所有这些是一项艰巨的任务,那么有什么方法可以实现自动化吗?在VB.Net中,可以使用"Option Strict"禁用所有变体的自动使用,但VB6没有该选项.

现在我添加DefByte A-Z到每个类,它使默认类型'Byte'而不是'Variant'.这让我在运行时捕获了很多未定义的变量,只要它们被分配了一个大于255的值.但它仍然不是完全万无一失的.

是否有更可靠的方法来检测所有未定义的变量?

Mar*_*rtW 5

我曾经使用Aivosto的Project Analyzer来获取这样的东西.有一个演示版本,可以让你很好地了解它能做些什么.


Bob*_* Mc 2

我认为没有一种“万无一失”的方法来检测所有未定义的变量。但是,Option Explicit语句要求所有变量都在该语句所在的模块中声明,因此编译器将标记任何并非如此的实例。还有一个 IDE 选项会自动将此语句添加到任何新模块的开头。