C#中Costant前面的减号,但在调试中看不到差异?有隐藏的特征吗?

C#中Costant前面的减号,但在调试中看不到差异?有隐藏的特征吗?,c#,object,C#,Object,我只是在检查别人的代码。我看到了这个 -Globals.TEST_VALUE 这在常量变量之前有-(减)。我已经调试过了,但它的值和它一样 我认为这是不能改变的从对象中减去一个值。这里有什么用 有人能告诉我这是否有意义,或者我遗漏了什么。这是一个由一元-运算符和全局变量组成的表达式。TEST\u VALUE常量。它返回Globals的值。TEST_value带有倒号,并且不更改其值 如果您不在任何地方分配或传递它,它甚至不会编译。这是有效的。以此为例: Int32 value = -Globa

我只是在检查别人的代码。我看到了这个

-Globals.TEST_VALUE
这在常量变量之前有-(减)。我已经调试过了,但它的值和它一样

我认为这是不能改变的从对象中减去一个值。这里有什么用


有人能告诉我这是否有意义,或者我遗漏了什么。

这是一个由一元
-
运算符和
全局变量组成的表达式。TEST\u VALUE
常量。它返回
Globals的值。TEST_value
带有倒号,并且不更改其值


如果您不在任何地方分配或传递它,它甚至不会编译。

这是有效的。以此为例:

Int32 value = -Globals.TEST_VALUE;

如果
Globals.TEST\u值
为常数
10
,则该值将等于
-10
<代码>全局。测试值未更改,但赋值为常量的负值。

这将导致编译器错误。真正的代码是什么?
如果你不分配或传递它-它不会改变任何东西
实际上,它会改变(即:使代码不可编译,因为在c#语句中只能是:赋值、调用、递增、递减、等待和新的对象表达式)。@PLB:yep,检查并修复了它。妈的,我忘了看——当我看到调试结果时!