在for循环中使用break是不好的做法吗?

在for循环中使用break是不好的做法吗?

循环中使用break语句是不好的做法?for

说,我在数组中搜索一个值。在for循环内部进行比较,找到值时,break;退出for循环。

这是一种不好的做法吗?我已经看到了使用替代:定义一个变量vFound,当被发现的价值它设置为true,并检查vFoundfor语句条件。但是,是否有必要为此目的创建一个新变量?

我在正常的C或C ++ for循环的上下文中询问。

PS:MISRA编码指南建议不要使用break。


慕村225694
浏览 1439回答 3
3回答

白衣非少年

这里有很多答案,但我还没有看到这个提到:如果你编写整洁,易读的循环,那么与使用break或continuefor循环相关的大多数“危险”都会被否定。如果循环的主体跨越多个屏幕长度并且具有多个嵌套子块,是的,您可能很容易忘记在中断后不会执行某些代码。但是,如果循环很短且非常重要,则break语句的目的应该是显而易见的。如果循环变得太大,请在循环中使用一个或多个命名良好的函数调用。避免这样做的唯一真正原因是处理瓶颈。

catspeake

不,休息是正确的解决方案。添加布尔变量会使代码更难读取并添加潜在的错误源。

慕姐8265434

您可以在其中找到各种带有“break”语句的专业代码。在必要时使用它是完全有意义的。在您的情况下,此选项优于仅为了退出循环而创建单独的变量。
打开App,查看更多内容
随时随地看视频慕课网APP