Documente Academic
Documente Profesional
Documente Cultură
C++: es un lenguaje de programacin diseado a mediados de los aos 1980 por Bjarne
Stroustrup. La intencin de su creacin fue el extender al exitoso lenguaje de
programacin C con mecanismos que permitan la manipulacin de objetos. En ese
sentido, desde el punto de vista de los lenguajes orientados a objetos, el C++ es un
lenguaje hbrido.
Posteriormente se aadieron facilidades de programacin genrica, que se sum a los
otros dos paradigmas que ya estaban admitidos (programacin estructurada y la
programacin orientada a objetos). Por esto se suele decir que el C++ es un lenguaje de
programacin multiparadigma.
Actualmente existe un estndar, denominado ISO C++, al que se han adherido la mayora
de los fabricantes de compiladores ms modernos. Existen tambin algunos intrpretes,
tales como ROOT.
Una particularidad del C++ es la posibilidad de redefinir los operadores, y de poder crear
nuevos tipos que se comporten como tipos fundamentales.
El nombre C++ fue propuesto por Rick Mascitti en el ao 1983, cuando el lenguaje fue
utilizado por primera vez fuera de un laboratorio cientfico. Antes se haba usado el
nombre "C con clases". En C++, la expresin "C++" significa "incremento de C" y se refiere
a que C++ es una extensin de C.
#include <iostream>
using namespace std;
int main()
{
cout << "Hola mundo" << std::endl;
cin.get();
}
La instruccion break.
Usando break podemos dejar un bucle incluso si su condicion de parada no esta
satisfecha. Puede ser usada para finalizar un lazo infinito, o forzar su finalizacion
antes de final natural. Por ejemplo, vamos a parar la cuenta regresiva antes de su
finalizacion natural (una falla del motor posiblemente):
// break loop example
#include <iostream>
using namespace std;
int main ()
{
int n;
for (n=10; n>0; n--) {
cout << n << ", ";
if (n==3)
{
cout << "countdown
aborted!";
break;
}
}
return 0;
}
10, 9, 8, 7, 6, 5, 4, 3,
countdown aborted!
La instruccion continue.
La instruccion continue causa que el programa salte el resto del extracto dentro del
bucle en la iteracion actual asi como si el final del extracto o bloque de
instruccion es haya sido alcanzado, provocando el salto a la siguiente iteracion. Por
ejemplo, vamos a saltar el numero 5 en nuestra cuenta regresiva:
// break loop example
#include <iostream>
using namespace std;
int main ()
{
for (int n=10; n>0; n--) {
if (n==5) continue;
cout << n << ", ";
}
10, 9, 8, 7, 6, 4, 3, 2, 1,
FIRE!
La instruccion goto.
Esta permite hacer un salto absoluto a otro punto del programa. Usted deberia usar
esta herramienta cuidadosamente ya que su ejecucion ignora cualquier tipo de
limitacion de anidamiento.
El punto de destino es identificado por una etiqueta, la cual es luego usada como
argumento de la instruccion goto. Una etiqueta consiste de un identificador valido
seguido por dos puntos (:).
Esta instruccion no tiene una utilidad concreta en programacion estructurada o
programacion orientada por objetos mas alla de la que aquellos fans de la
programacion de bajo nivel puedan encontrarle. Por ejemplo, aqui esta nuestra
cuenta regresiva usando goto:
// goto loop example
#include <iostream>
using namespace std;
int main ()
{
int n=10;
loop:
cout << n << ", ";
n--;
if (n>0) goto loop;
cout << "FIRE!";
return 0;
}
10, 9, 8, 7, 6, 5, 4, 3, 2, 1,
FIRE!
La funcion exit.
exit es una funcion definida en la biblioteca cstdlib (stdlib.h).
El proposito de exit es terminar el programa que esta corriendo con un codigo
especifico de salida. Su prototipo es:
void exit (int exit code);
El exit code es usado por algunos sistemas operativos y puede ser usado por
llamadas de programas. Por convencion, un exit code de 0 significa que el
programa finalizo normalmente y cualquier otro valor significa que ocurrio un error.
Esto trabaja de la siguiente manera: switch evalua expresion y verifica si el valor de este
es equivalente a la constante1, si es asi, el ejecuta el bloque de instrucciones 1 hasta
que encuentre la palabre reservada break, luego el programa saltara al final de la estructura
selectiva switch.
Si expression no era igual a constante1 esta revisara si expresion es equivalente a
constante2. Si lo es, se ejecutara el bloque de instrucciones 2 hasta que encuentre la
palabra reservada break.
Finalmente, si el valor de expresion no ha concordado con ninguna de las constantes
especificadas previamente (se puede especificar tantas sentencias case como valores se
quiera verificar), el programa ejecutara las instrucciones incluidas en la seccion default:, si
esta existe, ya que es opcional.
Ambos de los siguientes fragmentos de codigo son equivalentes:
ejemplo de switch
switch (x) {
case 1:
cout << "x is 1";
break;
case 2:
cout << "x is 2";
break;
default:
cout << "value of x
unknown";
}
equivalente if-else
if (x == 1) {
cout << "x is 1";
}
else if (x == 2) {
cout << "x is 2";
}
else {
cout << "value of x unknown";
}
de los casos, y esto puede ser muy util para ejecutar el mismo bloque de instrucciones para
diferentes posibles valores de la expresion evaluada. Por ejemplo:
switch (x) {
case 1:
case 2:
case 3:
cout << "x is 1, 2 or 3";
break;
default:
cout << "x is not 1, 2 nor 3";
}
Note que switch solo puede ser usada para comparar una expresion con diferentes
constantes. Debido a esto no podemos colocar variables (case (n*2):) o rangos (case
(1..3):) porque estas no son constantes validas.
Si necesita revisar rangos o valores que no son constanes usa concatenacion de sentencias
if y else if.