После написания кода, который может быть свелся к следующему:Обоснование за исключением OverflowException с отрицательным размером массива?
var size=-1;
var arr=new byte[size];
Я был удивлен, что он бросил OverflowException. Документы для OverflowException состояния:
Я не мог видеть, как обеспечение отрицательного размера для и длина массива помещается в описание данного для этого исключения, так углубились немного глубже и обнаружили, что это действительно указанное поведение:
Интересно, почему выбрано OverflowException. Это очень странно, если вы спросите меня. Это стоило мне не менее 5 минут расследования (не считая моих размышлений здесь). Может ли кто-нибудь пролить свет на это (по моему мнению) своеобразное дизайнерское решение?
Кажется разумным бросить это исключение для меня. – cjk
Как это переполнение любого описания? – spender