Posiblemente consiguiera lo que busco si alguien me pudiera decir cómo setear correctamente Codeblocks 20.03 ( solamente para este archivo ) para compilar con C ++ 17 -- ya tengo instalada la ultima versión de MinGW, con ésta pude compilar de todo ....... hasta ahora.
Así como tengo seteado tanto Codeblocks como Dev C++ 5.11, este Código entra en un loop infinito.
Gracias x leeer el mensaje.
Así como tengo seteado tanto Codeblocks como Dev C++ 5.11, este Código entra en un loop infinito.
Código (cpp) [Seleccionar]
#include <map>
#include <string>
using namespace std;
int main( )
{
map < string, string > ciudades = { { "123", "Lima" },
{ "234", "Tucson" },
{ "345", "Buenos Aires" }
};
// 1 INSERTAR UN ELEMENTO, un " PAIR : ' Tipo, Tipo ' ' Key, Value ' "
ciudades.insert ( pair < string, string > ( "1", "Moscu" ) ); // Recién después de ( 2 ) se Mostrará a Moscú como 1er Elemento
// por tener su " Key " menor a las demás
ciudades.insert ( pair < string, string > ( "123", "Trujillo" ) );
// 2 MOSTRAR X PANTALLA
// I " BUSCANDO " UN ELEMENTO MEDIANTE LA LLAVE
string key = "123";
cout << ciudades [ key ] << "\n"; // Mostrará " Lima " porque a Cada " Value " le corresponde una única " Key "
// II RECORRIENDO EL MAPA ( Existen dos Posibilidades )
// a ) La Forma más " Tradicional " = map Tipo, Tipo :: DECLARANDO UN ITERATOR ( Y LUEGO ) " FOR CON PUNTEROS EN COUT "
map < string, string > :: iterator it;
for ( it = ciudades.begin( ); it != ciudades.end( ); ++it ) // Los " ( ) " ' especifican ' " LO QUE EXISTA AL COMIENZO
// E INMEDIATAMENTE DESPUÉS ( x eso ' it != ' ) DEL FINAL ( "\0 " )
{
cout << it -> first << " = " << it -> second << "\n";
}
// b ) La forma más Fácil = " AUTO& ' Key Value ' : NombreDelMapa " ( Y LUEGO ) " FOR SIN PUNTEROS EN COUT "
// ESTA FORMA SÓLO SE CONSIGE S E T E A N D O este archivo p q sea compilado con C++ 17
// para aprovechar STRUCTURED BINDINGS de C++ 17
for ( auto& [k v] : ciudades )
{
cout << k << " = " << v << "\n";
}
*/
//3 MODIFICAR UN ELEMENTO = NombreDelMapa " . " FIND ( " Key " )
map < string, string > :: iterator it2 = ciudades.find("123");
if ( it2 != ciudades.end( ))
{
it2 -> second = "Trujillo";
}
for ( auto& [k v] : ciudades )
{
cout << k << " = " << v << "\n";
}
// 4 ELIMINAR UN ELEMENTO = NombreDelMapa " . " ERASE ( " Key " )
ciudades.erase("1");
for ( auto& [k v] : ciudades )
{
cout << k << " = " << v << "\n";
}
return 0;
}
Gracias x leeer el mensaje.