VB6 val (parseString ()) дает несоответствие типов, но не при отладке - PullRequest
0 голосов
/ 20 октября 2011

У меня есть код, который присваивает значение двойному массиву.Кажется, из-за ошибки «Несоответствие типов».

datamax(i) = val(parseString(curpos, dummy, delimit))

Сумасшедшая вещь в том, что, если я сначала отладлю.print из функции val (), ошибка не произойдет.

Debug.Print parseString(curpos, dummy, delimit)
datamax(i) = val(parseString(curpos, dummy, delimit))

Есть идеи?

1 Ответ

2 голосов
/ 21 октября 2011

Не могу сказать, что не так, потому что вы не показали достаточно кода, но если бы я рискнул догадаться, почему он работает с DebugPrint впереди, я бы сказал, что параметры, отправленные parseString, являются ByRef и обновляются,При втором вызове результат должен немного отличаться.Попробуйте выполнить два отладочных оттиска подряд:

Debug.Print "--->" & parseString(curpos, dummy, delimit) & "<---"
Debug.Print "--->" & parseString(curpos, dummy, delimit) & "<---"

и посмотрите, не меняется ли значение каждый раз.

...