What does this mean in contrast to "unreachable code detected"?
可以将文章内容翻译成中文,广告屏蔽插件可能会导致该功能失效(如失效,请关闭广告屏蔽插件后再试):
问题:
回答1:
Heuristically unreachable means possibly unreachable code. Unreachable code is certainly unreachable.
回答2:
Here's an example of Resharper giving the cryptic "Heuristically unreachable code" warning:
It's an example of:
- Resharper being way to smart for itself, because if you remove it the compiler will complain about a lack of a return statement
- Use of a word that is not common lexicon
回答3:
Say you're deleting 2 different kinds of objects in a unit test and you want to use a try/catch for both types.
If you delete one, and then check to see if it was successful without properly casting using:
Assert.IsNull(obj1);
The "IsNull" may always be null because you casted obj1 incorrectly, or did something above the greyed out code incorrectly with obj1, the next try/catch will be greyed out.
Try fixing the thing you're trying to Assert.IsNull and once it's not always null or undefined, the greyed out code will be reachable.