Closed. This question is opinion-based。它当前不接受答案。
想改善这个问题吗?更新问题,以便editing this post用事实和引用来回答。
2个月前关闭。
Improve this question
这是一个语言设计问题:
您是否认为无法访问的代码(通常在编程语言中)应该引发警告(即“报告问题并且仍然可以编译”)或错误(“拒绝编译”)?
我个人强烈认为这应该是一个错误:如果程序员编写了一段代码,那么在某些情况下应该总是实际运行它。但是,例如C#编译器似乎对此表示不同,仅报告警告。
注意:我意识到良好的死代码检测是一个非常困难的问题,但这不是此问题的重点。
以下是一些代码段中某些语句显然无法访问的示例:
-
-
如果您的编译器拒绝编译此类代码,则某些开发人员可能会抱怨。
想改善这个问题吗?更新问题,以便editing this post用事实和引用来回答。
2个月前关闭。
Improve this question
这是一个语言设计问题:
您是否认为无法访问的代码(通常在编程语言中)应该引发警告(即“报告问题并且仍然可以编译”)或错误(“拒绝编译”)?
我个人强烈认为这应该是一个错误:如果程序员编写了一段代码,那么在某些情况下应该总是实际运行它。但是,例如C#编译器似乎对此表示不同,仅报告警告。
注意:我意识到良好的死代码检测是一个非常困难的问题,但这不是此问题的重点。
以下是一些代码段中某些语句显然无法访问的示例:
return;
foo();
-
throw new Exception();
foo();
-
if (...) {
return;
} else {
throw new Exception();
}
foo();
最佳答案
一般来说,这应该是一个错误。
但是我想到一个异常(exception):
if (false) {
doStuffThatITemporarilyDisabled();
}
如果您的编译器拒绝编译此类代码,则某些开发人员可能会抱怨。
10-07 14:27