.NET9引用数组协变怪异Bug

💡 原文中文,约6400字,阅读约需16分钟。
📝

内容提要

引用类型数组的协变允许用子类替代父类,但可能导致运行时异常。例如,Giraffe数组可以存放Giraffe实例,但若存放Turtle实例则会引发异常。CLR在赋值时进行类型检查,增加了性能开销。此问题在.NET9中仍未得到合理解决。