Why does casting a null to a primitive(ie: int) in .net 2.0 throw a null ref exception and not a invalid cast exception?

前端 未结 4 967
生来不讨喜
生来不讨喜 2021-01-20 16:57

I was going through some code and came across a scenario where my combobox has not been initialized yet. This is in .NET 2.0 and in the following code, this.cbRegion.Select

4条回答
  •  孤独总比滥情好
    2021-01-20 17:08

    It has to do with Boxing and unboxing. It is trying to pull an int out of the box (unbox), but the object is null, so you get a null reference exception before it ever gets the change to cast.

提交回复
热议问题