c# - Visual Studio调试模式下Watch上显示的变量值
问题描述
如您所见,当执行到第 11 行时,变量 a、b、c 和 d 不存在,但是一旦执行到第 12 行,所有这些变量都设置为其默认值(根据什么显示在手表上 1)。
因此,我是否可以得出结论,一旦执行进入范围,即使在执行到达声明之前,所有对该范围可见的变量都将设置为其默认值?
如果是这样,我会感到困惑,因为如果我们将其放在Console.WriteLine(a);
第 12 行之后,则会出现错误,因为此时尚未声明变量 a。
那么我可以问一下为什么手表在第 12 行显示变量 a、b、c 和 d 已经具有(默认)值?更具体地说,如果变量 a、b、c 和 d 不存在并且在第 12 行分别设置为 0、false、0 和 null,为什么手表会显示这些信息?
非常感谢!
解决方案
推荐阅读
- python - 如何根据熊猫中的列表更改字符串
- python - 定义一个适用于字符串和列表的连接函数。如何?
- shell - Passing nested json argument variable as key to JQ json library
- mysql - 如何在查询中与工人及其旁边的经理一起编写查询
- pygame - 如何让敌人在pygame中以小的延迟随机射击子弹
- spring-cloud-stream - 如何知道是否所有消息都在kafka-spring云流中被消费
- go - 调试期间无法为 go app 设置参数
- c - 多个字符数组的输入不起作用
- openwrt - init.d - 如何强制在同一个 init.d 脚本中停止进程的顺序
- javascript - 如何在 Pdfmake 中的每个页面上获取当前项目的总数?