break vs continue en C++

Jinku Hu 12 octubre 2023
  1. Usar el operador de declaraciones break para terminar el cuerpo del bucle
  2. Usa la instrucción continue para saltar la parte del cuerpo del bucle
break vs continue en C++

Este artículo demostrará múltiples métodos sobre cómo usar las declaraciones de break vs continue en C++.

Usar el operador de declaraciones break para terminar el cuerpo del bucle

La declaración break similar a continue se llama la declaración jump, que se utiliza para interrumpir el flujo de la ejecución del programa. En este caso, break se utiliza para terminar la sentencia for del bucle. Nótese que, cuando se alcanza y se ejecuta el break, el programa deja el cuerpo del bucle y continúa desde la siguiente sentencia - cout << item << "3". La sentencia break debe usarse junto con la iteración o la sentencia switch y sólo afecta al bucle/switch más cercano.

#include <iostream>
#include <vector>

using std::cin;
using std::cout;
using std::endl;
using std::for_each;
using std::string;
using std::vector;

int main() {
  vector<string> arr1 = {"Gull", "Hawk"};

  for (auto &item : arr1) {
    cout << item << " 1 " << endl;
    for (const auto &item1 : arr1) {
      cout << item << " 2 " << endl;
      if (item == "Hawk") {
        break;
      }
    }
    cout << item << " 3 " << endl;
  }

  return EXIT_SUCCESS;
}

Producción :

Gull 1
Gull 2
Gull 2
Gull 3
Hawk 1
Hawk 2
Hawk 3

Usa la instrucción continue para saltar la parte del cuerpo del bucle

La sentencia continue es la característica del lenguaje que puede ser utilizada para terminar la iteración del bucle actual y comenzar a ejecutar la siguiente iteración. continue sólo puede ser usada en los bucles for, while o do while. Si la sentencia se pone dentro de múltiples bloques de bucle anidados, continue interrumpirá sólo la iteración del bloque de bucle interno y pasará a evaluar la expresión de la condición.

En el siguiente ejemplo, la sentencia continue se alcanza si el elemento vector actual es igual a Hawk. Una vez que se ejecuta, el programa evalúa la expresión del bucle for, actualmente si quedan otros elementos en el vector. Si es cierto, se ejecuta la línea cout << item << " 2 ", de lo contrario se alcanza la línea cout << item << " 3 ".

#include <iostream>
#include <vector>

using std::cin;
using std::cout;
using std::endl;
using std::for_each;
using std::string;
using std::vector;

int main() {
  vector<string> arr1 = {"Gull", "Hawk"};

  for (auto &item : arr1) {
    cout << item << " 1 " << endl;
    for (const auto &item1 : arr1) {
      cout << item << " 2 " << endl;
      if (item == "Hawk") {
        continue;
      }
    }
    cout << item << " 3 " << endl;
  }
  cout << endl;

  return EXIT_SUCCESS;
}

Producción :

Gull 1
Gull 2
Gull 2
Gull 3
Hawk 1
Hawk 2
Hawk 2
Hawk 3
Autor: Jinku Hu
Jinku Hu avatar Jinku Hu avatar

Founder of DelftStack.com. Jinku has worked in the robotics and automotive industries for over 8 years. He sharpened his coding skills when he needed to do the automatic testing, data collection from remote servers and report creation from the endurance test. He is from an electrical/electronics engineering background but has expanded his interest to embedded electronics, embedded programming and front-/back-end programming.

LinkedIn Facebook

Artículo relacionado - C++ Loop