Tag: compiler warnings

可以将C#编译器配置为在显式转换可能导致数据丢失时发出警告吗?

有没有办法配置VS2008 C#编译器为这样的代码发出警告: Int64 x = 123456789000; Int32 y = (Int32)x;

如何警告类型转换导致的潜在算术错误?

我正在使用C#编写计算模块,我碰到了这个: double v = 4 / 100; 我知道这是一个错误的初始化,返回v = 0.0而不是v = 0.04 c#规则说我必须确保至少有一个成员是双重的 ,如下所示: double v = (double) 4 / 100; double v = 4.0 / 100; 但是,我有很多涉及整数变量操作的初始化,我觉得懒得逐行浏览我的代码来检测这样的错误。 相反, 是否有可能被编译器警告这个?

#pragma warning disable&restore

我用c#创建了第一个项目。 我有很多警告错误,所有这些警告错误都是单一错误(内部编译器错误。有关详细信息,请参阅控制台日志。) 为减少警告错误,我使用了#pragma Warning disable。 #pragma warning恢复有问题代码的正面和背面。 我怀疑在我的最终版本中我应该保留#pragma warning disable&restore,因为它在程序中; 还是我需要删除它? 例如: #pragma warning disable if (Displayer.instance != null && CTR.Tore== “Keepit”) { Displayer.instance.SetFielderProfile (i); } #pragma warning restore 对于最终版本,我是否需要删除?

使用’Microsoft.Office.Interop.Word._Document.Close’时编译时间警告

有谁知道如何解决这个警告信息? 方法’Microsoft.Office.Interop.Word._Document.Close(ref object,ref object,ref object)’和非方法’Microsoft.Office.Interop.Word.DocumentEvents2_Event.Close’之间的歧义。 使用方法组。

并非所有代码路径都返回一个值

我得到了这个编译错误,有什么问题? public PictureBox getinfo(int i, int j) { return grid[i, j]; } public PictureBox kingmove(int i, int j)///<—–the problem is here { getinfo(i, j); if (i < 9) { grid[i, j] = grid[i – 1, j – 1]; } else { grid[i, j] = grid[i, j]; }

全局抑制c#编译器警告

在我的应用程序中,我有相当数量的实体,其中的字段通过reflection设置其值。 (在这种情况下,NHibernate正在设置它们)。 我想摆脱“x永远不会分配并且将始终具有其默认值0”的警告,因此我可以更轻松地选择其他警告。 我意识到你可以用pragma指令包围它们,但AFAIK你必须为每个指令执行此操作。 是否有项目范围或解决方案范围我能做到这一点?