Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/281.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# 为什么常量int会改变?_C#_Visual Studio_Unity3d_Debugging_Constants - Fatal编程技术网

C# 为什么常量int会改变?

C# 为什么常量int会改变?,c#,visual-studio,unity3d,debugging,constants,C#,Visual Studio,Unity3d,Debugging,Constants,我的代码错误和调试清楚地显示了const int的不正确值。在下面,您可以看到我没有修改const变量(无论如何我都不能修改)。 如果在代码执行的早期设置断点,const变量将正确设置为59。沿着这条线的某个地方,它明显地减少了1 我甚至不知道从哪里开始找。这种事情是不应该发生的,对吗?这段代码可能存在于一个类库中,您的主应用程序是根据这个类库编译的 您正在使用最新的代码进行调试,但是const的要点是它嵌入在调用站点中。因此,调用方仍然具有旧的2018-1960=58值。如果您声称调试器有时会

我的代码错误和调试清楚地显示了const int的不正确值。在下面,您可以看到我没有修改const变量(无论如何我都不能修改)。 如果在代码执行的早期设置断点,const变量将正确设置为59。沿着这条线的某个地方,它明显地减少了1


我甚至不知道从哪里开始找。这种事情是不应该发生的,对吗?

这段代码可能存在于一个类库中,您的主应用程序是根据这个类库编译的

您正在使用最新的代码进行调试,但是
const
的要点是它嵌入在调用站点中。因此,调用方仍然具有旧的
2018-1960=58
值。如果您声称调试器有时会向您显示新的
59
值,那么它必须在类库本身中,类库是针对自身编译的,因此保存新值

并不是常数改变了,而是它没有改变,所以这个名字。重新编译调用应用程序


另请参见。

您好,我认为您的链接不起作用,您可以在编辑器中查看预览,看看它是否起作用,我已经为您编辑了you@JamesGill链接一直对我有效,但我还是批准了你的编辑。将其设置为属性,并在setter中设置一个断点,以便你可以看到发生了什么请发布代码,而不是屏幕截图!我投了反对票,因为以截图形式发布代码会让类似情况的人更难找到问题,而且屏幕阅读器的用户也更难找到问题。