Сведения о вопросе

Martincow

00:29, 27th August, 2020

Теги

.net    

ArgumentNullException для целого числа

Просмотров: 452   Ответов: 3

В.NET, является ли более подходящим исключение аргумента null для целого числа, если значение равно Integer.MinValue или Integer = 0 (при условии, что 0 не является допустимым значением)?



  Сведения об ответе

SEEYOU

08:02, 1st August, 2020

Бросать ArgumentNullException не подходит, если аргумент на самом деле null . Вместо этого бросьте ArgumentOutOfRangeException (предпочтительно с сообщением, информирующим пользователя о том, какие значения int на самом деле приемлемы).

ArgumentOutOfRangeException вызывается при вызове метода, и по крайней мере один из аргументов, переданных методу, не является ссылкой null ( ничего в Visual Basic) и не содержит допустимого значения.


  Сведения об ответе

dumai

22:36, 2nd August, 2020

Ну, я думаю, что если вы используете int, то было бы лучше сказать InvalidArgumentException.

Кроме того, вы можете сделать свой INTs nullable, объявив их как int? (особенно если вы ожидаете значения null для вашего int.)


  Сведения об ответе

appple

06:26, 16th August, 2020

Если аргумент не null, не бросайте ArgumentNullException . Вероятно, было бы более разумно бросить ArgumentException, объясненный здесь.

edit: ArgumentOutOfRangeException , вероятно, еще лучше, как было предложено выше Avenger546.


Ответить на вопрос

Чтобы ответить на вопрос вам нужно войти в систему или зарегистрироваться