PDF de programación - Tutorial de C++ o el diario de Peter Class

Imágen de pdf Tutorial de C++ o el diario de Peter Class

Tutorial de C++ o el diario de Peter Classgráfica de visualizaciones

Actualizado el 23 de Junio del 2018 (Publicado el 14 de Enero del 2017)
2.955 visualizaciones desde el 14 de Enero del 2017
837,2 KB
122 paginas
Creado hace 15a (10/01/2005)
Tutorial de C++

o el diario de Peter Class

Peter Class

Pello Xabier Altadill Izura

Tutorial de C++: o el diario de Peter Class
por Peter Class y Pello Xabier Altadill Izura

Este documento se cede al dominio publico.

Historial de revisiones
Revisión 1.0 19-11-2004 Revisado por: px
Documento inicial
Revisión 1.1 23-11-2004 Revisado por: px
Revision inicial, correcciones menores e imagenes

Tabla de contenidos

1. Intro .....................................................................................................................................1
2. Hola nena............................................................................................................................3
3. Funciones............................................................................................................................5
4. Tipos de datos....................................................................................................................9
5. Operadores.......................................................................................................................13
6. Parametros, ambito, sobrecarga ...................................................................................19
7. Clases.................................................................................................................................25
8. Iteraciones ........................................................................................................................31
9. Punteros ............................................................................................................................37
10. Referencias.....................................................................................................................43
11. Funciones avanzadas....................................................................................................51
12. Arrays ..............................................................................................................................59
13. Herencia..........................................................................................................................63
14. Herencia multiple .........................................................................................................69
15. Miembros estaticos.......................................................................................................77
16. Clases y sus amigas ......................................................................................................81
17. Entrada/Salida ...............................................................................................................89
18. Preprocesador ................................................................................................................95
19. Principios de POO ........................................................................................................99
20. Templates......................................................................................................................101
21. Excepciones ..................................................................................................................107
22. Librerias estandar .......................................................................................................113
23. Notas, autoria, licencia, referencias.........................................................................117

iii

iv

Capítulo 1. Intro

Figura: el caballero de Peter Class.
Este es el diario de Peter Class sobre sus dias aprendizaje de una disciplina de ca-
balleros: c++ sobre linux. No pretende ser una vision exaustiva del lenguaje c++,
simplemente muestra su uso a traves de los ejemplos. Un lenguaje orientado a ob-
jetos como c++ precisa de cierta explicacion previa antes de meterse en desarrollos
serios, y para aprenderlo que mejor que programar ejemplos.
Peter era un campesino que se empeño en convertirse en paladin de c++, para des-
facer entuertos y para llevar la virtud a los lugares mas sacrilegos de la programacion.
No fue facil, y sus experiencias se cuentan aqui. Este diario es por tanto un conjunto
de ejemplos de codigo glosados por el ahora caballero Peter Class.
Atencion: este tutorial no contiene ni una sola linea de codigo util. Simplemente es un
conjunto de ejemplos ultrasimplones que tratan de mostrar la sintaxis cd c++. Puede
ser util como referencia rapida, sobre todo si da pereza mirar en los tipicos libros de
c++ de 900 paginas. Si, esos mismos libros que en la pagina 200 todavia estan con
las estructuras de control; pero no dire nombres <-- estoy pensando en Deitel, pero
openjade ocultara esto jeje --> Doh!

1

Capítulo 1. Intro

2

Capítulo 2. Hola nena

Bueno, vamos a ver si en 21 dias se va creando codigo c++ y se puede aprender este
lenguaje de forma ordenada. Se esta probando este codigo con gcc. Hoy es el dia uno
e incluyo el código mas simple posible.

/**
* HolaNena.cpp
* Codigo iniciatico que simplemente muestra el mensaje estandar HolaNena de nano
*
* Pello Xabier Altadill Izura
*
* Compilado: g++ HolaNena.cpp -o HolaNena
*/

using namespace std;
#include <iostream>

int main () {

// Sacamos por salida estandar un mensaje
cout << "HolaNena!\n";

return 0;

}

3

Capítulo 2. Hola nena

Figura: Entrenando. Hay que ir poco a poco
Aqui otro codigo de ejemplo.

/**
* Test.cpp
* Programa del ejemplo simple, para saber que es lo que hace ejecutalo
*
*
* Compilado: g++ Test.cpp -o Test
*/

using namespace std;
#include <iostream>

int main() {

int x = 5;
int y = 7;

cout << "\n";
cout << x + y << " " << x * y;
cout << "\n";

return 0;

}

4

Capítulo 3. Funciones

Vamos a ver como se declaran las funciones en c++. No tiene ningun misterio, es
igual que en c. Siempre hay que especificar el tipo de retorno.

/**
* Funcion.cpp
* Programa con llamada a una funcion
*
* Pello Xabier Altadill Izura
*
* Compilado: g++ Funcion.cpp -o Funcion
*/

using namespace std;
#include <iostream>

// Funcion: llamada
int llamada (int x, int y) {

cout << "Estamos en la funcion!!" << endl;
return (x+y);

}

int main() {

// Estos comentarios son propios de C++
cout << "Vamos a llamar a la funcion.." << endl;

// Llamamos a la funcion
// Llamamos a una funcion y asignamos
int z = llamada(5,7);
cout << "Resultado:" << z << endl;

// Llamada desde el output
cout << "Resultado:" << llamada(6,7) << endl;
cout << "Programa terminado \n" << endl;

return 0;

}

5

Capítulo 3. Funciones

Figura: Quiza llevemos encima un tarro de esencia de Fibonaci
Atencion, en este caso veremos como recoger datos de stdin o entrada estandar.

/**
* Funcion3.cpp
* Programa con llamada a una funcion
* El programa principal recoge datos de la entrada estandar
*
* Pello Xabier Altadill Izura
*
* Compilado: g++ Funcion3.cpp -o Funcion3
*/

using namespace std;
#include <iostream>

// Funcion: llamada
int llamada (int x, int y) {

cout << "Estamos en la funcion!!" << endl;
return (x+y);

}

int main() {

// Estos comentarios son propios de C++
cout << "Vamos a llamar a la funcion.." << endl;

// Llamamos a la funcion
// Llamamos a una funcion y asignamos
int z = 0, x = 0, y = 0;

// Recogemos los parametros
cout << "Dame el primer parametro:";
cin >> x;
cout << "\nOK!\nDame el segundo parametro:";
cin >> y;
cout << "\nOK vamos a calcular.";

6

Capítulo 3. Funciones

// Efectuamos la funcion.
z = llamada(x,y);

// Mostramos el resultado
cout << "Resultado:" << z << endl;

// Llamada desde el output
cout << "Resultado:" << llamada(6,7) << endl;
cout << "Programa terminado \n" << endl;

return 0;

}

Facil no?

7

Capítulo 3. Funciones

8

Capítulo 4. Tipos de datos

Figura: al principio puede hacerse un poco complejo
Los tipos de datos de c++ no varian mucho respecto a c y son bastante evidentes, tal
y como se puede apreciar en este codigo.

/**
* Tipos.cpp
* Programa para sacar el tamaño de cada tipo de datos
* Pello Xabier Altadill Izura
*
* Compilado: g++ Tipos.cpp -o Tipos
*/

using namespace std;
#include <iostream>

int main () {
// Sacamos el tamaño de cada tipo
cout << "El tamaño del int es:\t\t" << sizeof(int) << " bytes.\n";
cout << "El tamaño del short es:\t" << sizeof(short) << " bytes.\n";
cout << "El tamaño del long es:\t" << sizeof(long) << " bytes.\n";
cout << "El tamaño del char es:\t\t" << sizeof(char) << " bytes.\n";
cout << "El tamaño del float es:\t\t" << sizeof(float) << " bytes.\n";
cout << "El tamaño del double es:\t" << sizeof(double) << " bytes.\n";

// Sacamos por salida standar un mensaje
cout << "Termino el programa\n";

return 0;

}

9

Capítulo 4. Tipos de datos

Tambien se pueden definir constantes:

/**
* Constante.cpp
* Programa en el que definimos un valor constante
* Pello Xabier Altadill Izura
*
* Compilado: g++ Constante.cpp -o Constante
*/

using namespace std;
#include <iostream>

#define MEMOLA 25

int main () {

int y = 0;

// Definimos el valor constante
const float PI = 3.1416;

cout << "Ten fe en el caos: " << PI << endl;

// Sacamos por salida standar un mensaje
cout << "\nTermino el programa : " << MEMOLA << endl;

return 0;

}

Tabla 4-1. Tipos basicos de datos

Tipo
void
char

int

float
double

bool

wchar_t

Modificadores

signed char(8 bits),
unsigned char(8 bits)
signed int(16 bits),
unsigned int(16 bits), long
int (32 bits), unsigned long
int(32 bits), signed long
int(32 bits), short int(16
bits), unsigned short
int(16 bits), signed short
int(16 bit)

long double (80 bits)

Descripcion
Vacio
Caracter (8 bits)

Entero simple (16 bits)

Coma flotante (32 bits)
Coma flotante mas grande
(64 bits)
Valor booleano: true o
false
Caracteres anchos, para
determinado juegos de
caracteres

Sin animo de extenderse mucho mas, en c++ tambien disponemos de struct, union y

10

Capítulo 4. Tipos de datos

enum. Veamos unos ejemplos:

struct ficha {

char nombre[50];
int edad;
char dni[9];

} ficha1, ficha2;

strcpy(ficha1.nombre,"Marujita Diaz");
ficha1.edad =
Segmentatio
  • Links de descarga
http://lwp-l.com/pdf293

Comentarios de: Tutorial de C++ o el diario de Peter Class (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad