1
8
我实际上检查了,尽管调试器单步执行if(throw语句)后面的语句,但实际上并不是抛出异常。我怀疑这是IDE、IL生成和调试器之间的不一致,特别是对于throw语句。如果你尝试其他类型的陈述,你实际上看不到问题所在。它似乎也与这篇文章有关 If statement weirdness in Visual Studio 2008 我在if块中插入了assert语句,如下所示,以确保没有触发断言。
|
2
1
所以我尝试在VS2008中将这个精确的代码粘贴到一个新的控制台应用程序中,并添加必要的引用。这是它为我做的: 运行应用程序似乎没有引发任何异常。 然而 ,当我在调试器中运行它并跨过第30行(带有if的行)时,调试器用黄色突出显示了net行(带有throw)。我能够不断地跳过代码,而不会抛出任何实际的异常。如果我在第31行(罚球线)设置了一个断点,它就不会被击中。 我认为调试器用户界面只是关闭了。它似乎并没有实际执行该代码。我不知道是什么原因造成的,但似乎没有什么好担心的。 |
3
0
空值与空值不同。所以
我知道它现在对您没有帮助,但是.NET 4将有一个内置的方法,在同一个方法中执行修剪、空检查和空检查。 这应该可以满足您的需要:
|
4
0
我刚试过这个:
它并没有像预期的那样打印“真”。一定还有其他错误,或者在您的实际代码中,“if”语句后面有分号? 编辑:除了抛出异常而不是写入行,它也不会抛出异常。你确定这是正在抛出的代码吗? |
5
0
这样可以解决问题。首先,删除项目中obj和bin目录的内容。然后重新启动计算机。 如果这不能解决问题,则可能需要重新安装Visual Studio。 |
6
-1
您的一个/两个字符串变量可能为空,而不是空。 编辑 你们为什么投反对票? 我猜他的声明会引发nullreferenceexception。 不管怎样,也许我的回答不够清楚:( |
Robert King · Unity C#语法问题-转换位置 1 年前 |
JBryanB · 如何从基本抽象类访问类属性 1 年前 |
law · 检查答案按钮的输入字符串格式不正确 2 年前 |
i_sniff_ket · 在unity之外使用unity类 2 年前 |