Мое понимание функции Integer.TryParse() состояло в том, что она пыталась проанализировать целое число из переданной строки, и если синтаксический анализ не завершился, целочисленное значение результата останется таким же, как и раньше.Почему Integer.TryParse задает результат при ошибке при ошибке?
У меня есть целое число со значением по умолчанию -1, которое я хотел бы оставить в -1, если синтаксический анализ завершится с ошибкой. Однако функция Integer.TryParse() при отсутствии синтаксического анализа меняет это значение по умолчанию на ноль.
Dim defaultValue As Integer = -1
Dim parseSuccess As Boolean = Integer.TryParse("", defaultValue)
Debug.Print("defaultValue {0}", defaultValue)
Debug.Print("parseSuccess {0}", parseSuccess)
Я ожидаю, что фрагмент кода выше должен вывести:
defaultValue -1
parseSuccess False
Однако вместо этого он выводит:
defaultValue 0
parseSuccess False
ли мое понимание правильно?