1
Definir una estructura de "convertir" que evitará pasar caracteres firmados. No se olvide de anular el operador cada vez para hacer espacio para el siguiente carácter de la cadena. Código es el siguiente :
struct { convert
operador void () (char & c ) { c = toupper ( (unsigned char) c ) ;} }
;
2
Declarar una cadena que es el alfabeto en minúsculas . Código es el siguiente :
std :: string alfabeto = " abcdefghijklmnopqrstuvwxyz " ;
3
Aplicar la estructura de la cadena del alfabeto un carácter a la vez, usando " for_each . " La función " for_each " toma tres argumentos : el principio de la secuencia , el final de la secuencia y es lo que hay que hacer para cada elemento de la secuencia . Cuando haya terminado, se habrá convertido todo el alfabeto en mayúsculas
for_each ( alphabet.begin (), alphabet.end (), convert ( ) ) .