logo

Bucle for basado en rango en C++

El bucle for basado en rango en C++ se agregó desde C++ 11. Ejecuta un bucle for sobre un rango. Se utiliza como un equivalente más legible al bucle for tradicional que opera en un rango de valores, como todos los elementos de un contenedor.

emitir una cadena a int java
  for ( range_declaration : range_expression )      loop_statement    Parameters :    range_declaration :   a declaration of a named variable, whose type is the  type of the element of the sequence represented by  range_expression, or a reference to that type. Often uses the auto specifier for automatic type  deduction.   range_expression :   any expression that represents a suitable sequence  or a braced-init-list.   loop_statement :   any statement, typically a compound statement, which is the body of the loop.>

Implementación de C++:



C++
// Illustration of range-for loop // using CPP code #include  #include  #include  #include  using namespace std; // Driver int main() {  // Iterating over whole array  vector v = {0, 1, 2, 3, 4, 5};  para (auto i : v) cout<< i << ' ';  cout << '
';  // the initializer may be a braced-init-list  for (int n : { 0, 1, 2, 3, 4, 5 })  cout << n << ' ';  cout << '
';  // Iterating over array  int a[] = { 0, 1, 2, 3, 4, 5 };  for (int n : a)  cout << n << ' ';  cout << '
';  // Just running a loop for every array  // element  for (int n : a)  cout << 'In loop' << ' ';  cout << '
';  // Printing string characters  string str = 'Geeks';  for (char c : str)  cout << c << ' ';  cout << '
';  // Printing keys and values of a map  map MAPA({ { 1, 1 }, { 2, 2 }, { 3, 3 } });  para (auto i: MAP) cout<< '{' << i.first << ', ' << i.second << '}
'; }>

Producción
0 1 2 3 4 5 0 1 2 3 4 5 0 1 2 3 4 5 In loop In loop In loop In loop In loop In loop G e e k s {1, 1} {2, 2} {3, 3}>


C++ 17 o superior: Los bucles basados ​​en rango también se pueden utilizar con mapas como este:

for (auto& [key, value]: myMap) {  cout << key << ' has value ' << value << std::endl; }>

Aquí [clave, valor] funciona como elementos de par al que se puede acceder directamente sin especificar la primera o segunda palabra clave.

zorro o lobo