Visual studio 2010 F中的#line编译器指令将如何在Visual Studio调试器中使用?

Visual studio 2010 F中的#line编译器指令将如何在Visual Studio调试器中使用?,visual-studio-2010,f#,Visual Studio 2010,F#,VisualStudio调试器将显示F#源还是被#line指令或F#源引用的源?有什么缺点吗?(例如,我假设像在声明上滑动鼠标这样的巧妙技巧将停止工作,因为原始源代码将不会被解析?) 编辑: 有人向我暗示我只是在偷懒。这当然是事实。我测试了它并回答了我自己的问题。 步进按预期工作 断点按预期工作 VS做了一些概率假设。例如,您可以右键单击一个标识符来检查它(“嘿,我不知道这家伙使用的是什么外来语法,但我敢打赌,他使用空格、运算符和标识符的方式很常见,让我们来帮忙吧”) 然而,VS不够大胆,无法在

VisualStudio调试器将显示F#源还是被#line指令或F#源引用的源?有什么缺点吗?(例如,我假设像在声明上滑动鼠标这样的巧妙技巧将停止工作,因为原始源代码将不会被解析?)

编辑: 有人向我暗示我只是在偷懒。这当然是事实。我测试了它并回答了我自己的问题。

  • 步进按预期工作
  • 断点按预期工作
  • VS做了一些概率假设。例如,您可以右键单击一个标识符来检查它(“嘿,我不知道这家伙使用的是什么外来语法,但我敢打赌,他使用空格、运算符和标识符的方式很常见,让我们来帮忙吧”)
  • 然而,VS不够大胆,无法在鼠标悬停时做出相同的概率假设(它不检查)
缺点: -如果原始代码与生成的F#代码非常不同,VS似乎会突出显示一些不太好用的语句。我会觉得奇怪的行为?

  • 步进按预期工作
  • 断点按预期工作
  • VS做了一些概率假设。例如,您可以右键单击一个标识符来检查它(“嘿,我不知道这家伙使用的是什么外来语法,但我敢打赌,他使用空格、运算符和标识符的方式很常见,让我们来帮忙吧”)
  • 然而,VS不够大胆,无法在鼠标悬停时做出相同的概率假设(它不检查)
缺点:
-如果原始代码与生成的F#代码非常不同,VS似乎会突出显示一些不太好用的语句。我觉得奇怪的行为?

你说得对;-)我知道人们已经将其用于解析器生成器,因为代码生成需要大量工作,我可以想象调试在某种程度上受到了影响。所以在我的辩护中,我也在问这种方法有什么缺点。构建代码生成器需要做很多工作,所以我宁愿在走这条路之前先问一下需要做什么。难道你不能用#行指令编写一个10行程序来尝试吗?我认为它要么有效,要么无效。你说得有道理;-)我知道人们已经将其用于解析器生成器,因为代码生成需要大量工作,我可以想象调试在某种程度上受到了影响。所以在我的辩护中,我也在问这种方法有什么缺点。构建代码生成器需要做很多工作,所以我宁愿在走这条路之前先问一下需要做什么。难道你不能用#行指令编写一个10行程序来尝试吗?我希望它要么有效,要么无效。