这可能是不可能的,但它对调试非常有帮助。有时程序运行时会出现随机错误。我希望能够在(字符串)中输入内容,然后它将获取一个带有该字符串名称的变量并返回其值。
int mainNumber = 89;
输入:检索mainNumber 输出:89
这样的事情可能吗?我不想为每一个变量创建调试,因为有些东西可能会出错。我知道我可以等待bug发生,停止程序,抛出调试并再次等待,但这会更快。
答案 0 :(得分:10)
答案 1 :(得分:6)
“即时窗口”会成为您想要的吗? http://msdn.microsoft.com/en-us/library/f177hahy(v=VS.100).aspx
答案 2 :(得分:1)
我建议阅读.NET中的Trace和Debug。您通常可以从程序的配置文件中关闭和打开Trace和Debug语句,这样就不会影响运行时性能,除非您需要这些转储。然后,您可以在代码中添加Trace.Write(...)
和Debug.Write(...)
语句,以提供您想要的输出。
答案 3 :(得分:0)
根据您的评论,听起来您需要做一些研究。以下是一些需要考虑/尝试的事情:
我过去做过的一个选项是将日志记录(通常是文本文件)添加到相关应用程序中。我记录了感兴趣的区域,并为条目添加时间戳。获取足够的信息,以便您可以充分识别正在发生的操作(变量/对象的状态之前/之后,识别操作的任何支持信息等)。
当报告(或复制)错误时,如果报告者提供了足够的信息(即时间,他们正在做什么,应用程序特有的其他内容或他们正在做什么),您可以查看日志文件并查看发生了什么事。
获得该信息后,您既可以确定根本原因,也可以将其缩小到更具体的区域,并将工作重点放在那里。
这可能是一个迭代过程,取决于应用程序的大小以及可能出现的问题的面积有多大。