Mah*_*dsi 5 c# string-formatting
在格式字符串的全文是静态的并且在编译时已知的情况下,丢失的格式字符串参数不应该是编译时错误,或者至少是警告吗?
ReSharper 捕捉到了这一点,但它只是一个带下划线的波浪线。我的印象是这会触发一般的编译时错误:
string x = string.Format("soeuotnh {0}");
Run Code Online (Sandbox Code Playgroud)
有什么方法可以触发此类错误的警告,而不必通过 FxCop 或其他方式运行我的代码?即使是 C/C++ 编译器也会为如此明显的错误触发警告/错误(尽管它们通常不会检查类型安全)。
Mah*_*dsi -1
我已在 Microsoft Connect 上提交了考虑此功能的请求,因为我认为
归根结底,这是一种“是的,可以,不,不,也许应该”的情况。我试图确保我无法在编译器(不是第三方软件)中设置任何东西来使其警告更具攻击性,或者是否有某种方法可以更改我的代码以使其抛出异常(例如,将所有内容声明为 const),但事实证明(到目前为止)这是不可能的。无论 Visual Studio 团队对我在 MS Connect 上提出的问题有何反应,事实仍然是编译器肯定可以在编译时捕获大量字符串格式异常,这将是一个好处......但它仍然适用于VS 团队来确定它是否值得实施。
| 归档时间: |
|
| 查看次数: |
2455 次 |
| 最近记录: |