我使用JetBrains Rider编写C#代码。常常,Rider会在我的代码中划线一些操作,例如以下的list.Where LINQ方法调用: 当我将鼠标光标放在Where关键字上时,它会显示以下消息: 虽然编译不会生成任何警告,Rider本身也不会显示任何警告,但是它的含义是什么?
插件“Heap Allocations Viewer”是亮点所在。该亮点的作用是告知您有关执行分配、装箱、拆箱等操作的代码信息。这些操作可能对您有意义,但通常只有在处理非常受限制的执行环境或受限制的执行配置时才会出现,例如低内存嵌入式系统或游戏编程,其中内存分配或垃圾回收是您希望尽可能避免的东西。如果您不太关心此插件所提供的信息,则可以在Rider中安全地禁用或删除它,方法是前往“文件->设置->插件”并搜索。编译器之所以既不发出警告也不产生错误,是因为该代码实际上是完全无害且不会出现问题的,但它具有一些副作用,您可能希望避免上述情况。