Manual C++
wsalomon0125 de Noviembre de 2013
3.511 Palabras (15 Páginas)204 Visitas
ÍNDICE
1 INTRODUCCIÓN........................................................................................................................................1
2 MODIFICACIONES MENORES...............................................................................................................2
2.1 CAMBIO EN LA EXTENSIÓN DEL NOMBRE DE LOS FICHEROS................................................................2
2.2 COMENTARIOS INTRODUCIDOS EN EL PROGRAMA..............................................................................2
2.3 DECLARACIÓN SIMPLIFICADA DE VARIABLES TIPO ENUMERACIÓN.....................................................3
2.4 DECLARACIÓN SIMPLIFICADA DE VARIABLES CORRESPONDIENTES A ESTRUCTURAS..........................4
2.5 MAYOR FLEXIBILIDAD EN LA DECLARACIÓN DE VARIABLES..............................................................4
2.6 SCOPEO VISIBILIDAD DE VARIABLES..................................................................................................5
2.7 ESPECIFICADOR CONSTPARA VARIABLES...........................................................................................6
2.8 ESPECIFICADOR CONSTPARA PUNTEROS.............................................................................................7
2.9 CONVERSIONES EXPLÍCITAS DE TIPO..................................................................................................8
2.10 ESPECIFICADOR INLINEPARA FUNCIONES...........................................................................................8
2.11 SOBRECARGA DE FUNCIONES..............................................................................................................9
2.12 VALORES POR DEFECTO DE PARÁMETROS DE UNA FUNCIÓN...............................................................9
2.13 VARIABLES DE TIPO REFERENCIA......................................................................................................10
2.14 OPERADORES NEWY DELETEPARA GESTIÓN DINÁMICA DE MEMORIA...............................................12
2.15 PUNTEROS DE TIPO VOID...................................................................................................................13
2.16 NUEVA FORMA DE REALIZAR LAS OPERACIONES DE ENTRADA Y SALIDA..........................................14
2.17 FUNCIONES CON NÚMERO DE PARÁMETROS VARIABLE.....................................................................15
3 MODIFICACIONES MAYORES ............................................................................................................16
3.1 INTRODUCCIÓN A LA PROGRAMACIÓN ORIENTADA A OBJETOS (OOP) ............................................16
3.2 CLASES, OBJETOS Y MÉTODOS.........................................................................................................17
3.3 EJEMPLO DE CLASE EN C++: NÚMEROS COMPLEJOS.........................................................................17
3.4 CLASE SIN SECCIONES PRIVADAS: STRUCT........................................................................................23
3.5 CLASES CON SECCIONES PRIVADAS. .................................................................................................25
3.6 EXPANSIÓN INLINE...........................................................................................................................27
3.6.1 Definición ..........................................................................................................................27
3.6.2 Implementación de las funciones inline.............................................................................27
3.7 ENTRADA Y SALIDA DE DATOS.........................................................................................................28
3.7.1 Una breve comparación con la entrada y salida de datos de ANSI C...............................29
3.8 OPERADORES NEWY DELETECON CLASES........................................................................................30
3.9 CONSTRUCTORES Y DESTRUCTORES.................................................................................................31
3.9.1 Inicializadores ...................................................................................................................32
3.9.2 Llamadas al constructor....................................................................................................32
3.9.3 Constructor por defecto y constructor con parámetros con valor por defecto..................33
3.9.4 Constructor de oficio.........................................................................................................34
3.9.5 Constructor de copia .........................................................................................................34
3.9.6 Necesidad de escribir un constructor de copia .................................................................35
3.9.7 Los constructores y el operador de asignación (=)...........................................................37
3.9.8 Destructores ......................................................................................................................37
3.10 CLASES Y FUNCIONES FRIEND...........................................................................................................38
3.11 EL PUNTERO THIS..............................................................................................................................40
3.12 SOBRECARGA DE OPERADORES.........................................................................................................40
3.12.1 Clase cadenapara manejo de cadenas de caracteres.......................................................41
3.12.2 Definición de funciones y operadores de la clase cadena.................................................45
3.12.3 Ejemplo de utilización de la clase cadena.........................................................................48
3.12.4 Sobrecarga de los operadores (++) y (--) .........................................................................50
3.13 OBJETOS MIEMBRO DE OTROS OBJETOS. ...........................................................................................51
3.14 VARIABLES MIEMBRO STATIC............................................................................................................53
3.15 FUNCIONES MIEMBRO STATIC............................................................................................................55
4 HERENCIA.................................................................................................................................................57
4.1 NECESIDAD DE LA HERENCIA...........................................................................................................57
4.2 DEFINICIÓN DE HERENCIA................................................................................................................57
ESIISS: Aprenda C++ como si estuviera en Primero página 2
4.2.1 Variables y funciones miembro protected .........................................................................57
4.3 CONSTRUCTORES DE LAS CLASES DERIVADAS: INICIALIZADOR BASE...............................................60
4.4 HERENCIA SIMPLE Y HERENCIA MÚLTIPLE........................................................................................60
4.5 CLASES BASE VIRTUALES.................................................................................................................61
4.6 CONVERSIONES ENTRE OBJETOS DE CLASES BASE Y CLASES DERIVADAS.........................................62
5 POLIMORFISMO .....................................................................................................................................63
5.1 IMPLEMENTACION DE LAS FUNCIONES VIRTUALES...........................................................................65
5.2 FUNCIONES VIRTUALES PURAS.........................................................................................................66
5.3 CLASES ABSTRACTAS.......................................................................................................................67
5.4 DESTRUCTORES VIRTUALES.............................................................................................................67
6 ENTRADA/SALIDA EN C++ ...................................................................................................................69
6.1 ENTRADA/SALIDA CON FORMATO.....................................................................................................69
6.2 ACTIVAR Y DESACTIVAR INDICADORES............................................................................................70
6.3 FUNCIONES MIEMBRO WIDTH(), PRECISION()Y FILL()........................................................................71
6.3.1 Manipuladores de entrada/salida......................................................................................71
6.4 SOBRECARGA DE LOS OPERADORES DE ENTRADA/SALIDA (<< Y >>)................................................72
6.5 ENTRADA/SALIDA DE FICHEROS.......................................................................................................72
6.5.1 Funciones miembro de iostream........................................................................................73
...