Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/wordpress/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 这行代码对Resharper来说是否太高级了?_C#_Resharper 9.0 - Fatal编程技术网

C# 这行代码对Resharper来说是否太高级了?

C# 这行代码对Resharper来说是否太高级了?,c#,resharper-9.0,C#,Resharper 9.0,几分钟前,我正在用C编写一些东西,并编写了以下代码行: private void ReportCheckState( String message , bool state ) { ( ( NovaEngineEditor )this.Parent ).EditorStatusBar.ShowMessage( ( message += state ? " Enabled." : " Disabled." ) ); } 令我惊讶的是,Resharper显然

几分钟前,我正在用C编写一些东西,并编写了以下代码行:

private void ReportCheckState( String message , bool state ) {
            ( ( NovaEngineEditor )this.Parent ).EditorStatusBar.ShowMessage( ( message += state ? " Enabled." : " Disabled." ) );
        }
令我惊讶的是,Resharper显然认为变量消息的附加不会在任何执行路径中使用。然而,事实并非如此。它已被使用,并按预期工作。那么,我真的找到了比Resharper更聪明的方法了吗?以下是显示灰色文本的屏幕抓图:

这是表单上显示的最终输出的图像;它确实工作正常


我们来破解密码

消息+=状态?已启用。:残疾人

消息=消息+状态?已启用。:残废的

分配是多余的,因为您不再使用消息变量

你真的想要吗


消息+状态?已启用。:残废的

好的,它确实工作正常,新字符串实际上已形成,但您不会在ReportCheckState方法中的任何其他位置使用此值,因此您将得到您得到的值。将其更改为+而不是+=。++=将值追加到字符串变量。由于您以后没有在代码中使用此变量,因此它是多余的。您的代码应该是:message+state?已启用。:残废编辑:@alexw:比我快9秒;pI guess R试图说+=的+部分的结果是有用的,但赋值返回并不是有用的,这在代码中是这样的-您永远不会使用消息本身的值later@alexw好的,我明白了。所以它不是一个bug。该死,有一分钟我有点印象深刻=P@TyCobb要使该声明发挥作用,必须铸造该声明。