Сколько типов циклов есть в C ++? - PullRequest
0 голосов
/ 22 февраля 2020

Я знаю, что C ++ в основном имеет три вида циклов:

  1. для l oop

  2. в то время как l oop

  3. do-while l oop

Но нет ' t for_each оператор зацикливания?

А как насчет диапазона для l oop?

Я в замешательстве, что ответьте, если кто-нибудь спросит меня о количестве типов циклов в C ++. Я понимаю, что for-each - это алгоритм STL, который реализован с использованием одной из вышеперечисленных циклических конструкций C ++. Но по этой логике c любой из этих циклов бази c может быть смоделирован одним из других циклов. Люди говорят, что Javascript имеет 5 видов циклов, поэтому не может ли C ++ сказать, что он также имеет 5 видов циклов? Или даже больше, если вы рассмотрите for_each_n и transform , но я не знаю.

Я ищу цитату из стандарта C ++, которая подтверждает число .

1 Ответ

1 голос
/ 22 февраля 2020

Но for_each также не является циклическим оператором?

Нет, это шаблон функции.

А как насчет диапазона на основе l oop?

Диапазон на основе for l oop - это все oop.

Я не понимаю, что ответить, если кто-нибудь спросит меня, сколько типов циклов в C ++

Зависит от того, что они значат. Один может включать goto и рекурсию в дополнение к for, while, do while, но не алгоритмы STL, другие могут включать в себя все, что способно повторять фрагмент кода, тогда как другие могут просто считать goto как "реальная сделка", потому что другие циклы можно эмулировать с помощью goto. Тогда есть также setjmp / longjmp. В любом случае это неопределенный и бесполезный вопрос.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...