Actualizado el 1 de Junio del 2021 (Publicado el 8 de Junio del 2018)
820 visualizaciones desde el 8 de Junio del 2018
668,3 KB
87 paginas
Creado hace 27a (20/04/1998)
(VFXHOD6XSHULRUGH,QJHQLHURV,QGXVWULDOHV
,QGXVWUL,QMLQHUXHQ*RLPDLODNR(VNROD
&'#$ '##
## &#%$%%
$SUHQGD&
FRPRVLHVWXYLHUDHQSULPHUR
,;07 ,7.J, /0 ,O3 • 48F 3,.4 #4/7J:0 • 48F ,7J, $,770: • #:134 4N
14384 7,E0 • !,9 :308 • -0794 ,7,-, • #:-F3 #4/7J:0
G
I
O
Z
l
S
X
U
L
T
/
G
J
T
K
X
V
’
7
-
3
E
9
8
,
-
0
$
3
,
$
$SUHQGD&
FRPRVLHVWXYLHUDHQSULPHUR
-DYLHU*DUFtDGH-DOyQ
-RVp,JQDFLR5RGUtJXH]
-RVp0DULD6DUULHJXL
5XILQR*RxL
$OIRQVR%UD]iOH]
3DW[L)XQHV
$OEHUWR/DU]DEDO
5XEpQ5RGUtJXH]
3HUWHQHFLHQWHDODFROHFFLyQ·$SUHQGD«FRPRVLHVWXYLHUDHQSULPHUR
1
2
3
ÍNDICE
INTRODUCCIÓN ........................................................................................................................................1
MODIFICACIONES MENORES...............................................................................................................2
2.1
CAMBIO EN LA EXTENSIÓN DEL NOMBRE DE LOS FICHEROS................................................................2
COMENTARIOS INTRODUCIDOS EN EL PROGRAMA ..............................................................................2
2.2
DECLARACIÓN SIMPLIFICADA DE VARIABLES TIPO ENUMERACIÓN.....................................................3
2.3
DECLARACIÓN SIMPLIFICADA DE VARIABLES CORRESPONDIENTES A ESTRUCTURAS..........................4
2.4
2.5 MAYOR FLEXIBILIDAD EN LA DECLARACIÓN DE VARIABLES ..............................................................4
SCOPE O VISIBILIDAD DE VARIABLES ..................................................................................................5
2.6
ESPECIFICADOR CONST PARA VARIABLES ...........................................................................................6
2.7
ESPECIFICADOR CONST PARA PUNTEROS.............................................................................................7
2.8
CONVERSIONES EXPLÍCITAS DE TIPO ..................................................................................................8
2.9
2.10 ESPECIFICADOR INLINE PARA 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 NEW Y DELETE PARA 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.7
3.8
3.9
MODIFICACIONES MAYORES.............................................................................................................16
INTRODUCCIÓN A LA PROGRAMACIÓN ORIENTADA A OBJETOS (OOP) ............................................16
3.1
CLASES, OBJETOS Y MÉTODOS.........................................................................................................17
3.2
EJEMPLO DE CLASE EN C++: NÚMEROS COMPLEJOS .........................................................................17
3.3
CLASE SIN SECCIONES PRIVADAS: STRUCT ........................................................................................23
3.4
CLASES CON SECCIONES PRIVADAS. .................................................................................................25
3.5
EXPANSIÓN INLINE ...........................................................................................................................27
3.6
3.6.1
Definición ..........................................................................................................................27
3.6.2
Implementación de las funciones inline.............................................................................27
ENTRADA Y SALIDA DE DATOS .........................................................................................................28
3.7.1
Una breve comparación con la entrada y salida de datos de ANSI C...............................29
OPERADORES NEW Y DELETE CON CLASES ........................................................................................30
CONSTRUCTORES Y DESTRUCTORES .................................................................................................31
Inicializadores ...................................................................................................................32
3.9.1
Llamadas al constructor....................................................................................................32
3.9.2
Constructor por defecto y constructor con parámetros con valor por defecto..................33
3.9.3
Constructor de oficio.........................................................................................................34
3.9.4
3.9.5
Constructor de copia .........................................................................................................34
Necesidad de escribir un constructor de copia .................................................................35
3.9.6
Los constructores y el operador de asignación (=)...........................................................37
3.9.7
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 cadena para 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
NECESIDAD DE LA HERENCIA............................................................................................................57
4.1
DEFINICIÓN DE HERENCIA ................................................................................................................57
4.2
5
6
7
4.2.1
Variables y funciones miembro protected .........................................................................57
CONSTRUCTORES DE LAS CLASES DERIVADAS: INICIALIZADOR BASE ...............................................60
HERENCIA SIMPLE Y HERENCIA MÚLTIPLE........................................................................................60
CLASES BASE VIRTUALES .................................................................................................................61
CONVERSIONES ENTRE OBJETOS DE CLASES BASE Y CLASES DERIVADAS..........................................62
4.3
4.4
4.5
4.6
POLIMORFISMO .....................................................................................................................................63
IMPLEMENTACION DE LAS FUNCIONES VIRTUALES ...........................................................................65
5.1
FUNCIONES VIRTUALES PURAS .........................................................................................................66
5.2
CLASES ABSTRACTAS .......................................................................................................................67
5.3
DESTRUCTORES VIRTUALES .............................................................................................................67
5.4
ENTRADA/SALIDA EN C++ ...................................................................................................................69
ENTRADA/SALIDA CON FORMATO.....................................................................................................69
6.1
ACTIVAR Y DESACTIVAR INDICADORES ............................................................................................70
6.2
FUNCIONES MIEMBRO WIDTH(), PRECISION() Y FILL()........................................................................71
6.3
6.3.1 Manipuladores de entrada/salida......................................................................................71
SOBRECARGA DE LOS OPERADORES DE ENTRADA/SALIDA (<< Y >>)................................................
Comentarios de: Aprenda C++ como si estuviera en primero (0)
No hay comentarios