我使用VB6已有10年了,偶尔会遇到“ByRef argument type mismatch”错误,但是我找不到不匹配的地方。通常我都会强制转换数据类型来解决问题,但这一次我想问一下。下面的代码引发了错误:“LuxMinTarget = MeasureLuxAtCode(FirstLevel)”,其中显示“ByRef argument type mismatch”,表明FirstLevel不是一个整数。
FirstLevel被声明为整型,它的值由返回整数的用户定义类型(UDT)设置,那么我错在哪里呢?如果我像这样将其强制转换为整数:
" LuxMinTarget = MeasureLuxAtCode(Int(FirstLevel))"
则编译器/解释器会执行成功,但我并不满意。所以,这是编译器的错误还是我太愚蠢了?
FirstLevel被声明为整型,它的值由返回整数的用户定义类型(UDT)设置,那么我错在哪里呢?如果我像这样将其强制转换为整数:
" LuxMinTarget = MeasureLuxAtCode(Int(FirstLevel))"
则编译器/解释器会执行成功,但我并不满意。所以,这是编译器的错误还是我太愚蠢了?