我刚刚在C#/.NET中观察到了一个奇怪的现象。if (new sbyte[5] is byte[]) throw new ApplicationException("Impossible!");{}
这将抛出“为什么??”,但不会抛出“不可能!”它适用于所有相同大小的整型数组。有人能给我解释一下吗?我很困惑。顺便说一下,我正在使用.NET 4
我注意到.NET C++ (C++ /clr:safe)提供了对智能指针(称为msclr::auto_handle)的模拟,如auto_ptr或shared_ptr。我一直在分析C++ /clr生成的IL,并注意到它实际上所做的一切似乎都是在修改封装数据的每个函数中使用try/faults来发送垃圾邮件。 M