Saltar al contenido principal
Programación Orientada a Objetos con C++, 5ª Edición.

Programación Orientada a Objetos con C++, 5ª Edición.

Ceballos Sierra, Francisco Javier

La programación orientada a objetos (POO) es una de las técnicas más modernas de desarrollo que trata de disminuir el coste del software, aumentando la eficiencia y reduciendo el tiempo de espera para la puesta en escena de una nueva aplicación. Por eso ...

Editorial:
Rama, Editorial
Año de edición:
2018
ISBN:
978-84-9964-754-8
Páginas:
819
Encuadernación:
Rústica
40,29 €
IVA incluido
Consulta disponibilidad Añadir a favoritos

Sinopsis

La programación orientada a objetos (POO) es una de las técnicas más modernas de desarrollo que trata de disminuir el coste del software, aumentando la eficiencia y reduciendo el tiempo de espera para la puesta en escena de una nueva aplicación. Por eso

Índice

PRÓLOGO CAPÍTULO 1. C++ versus C . HISTORIA DEL LENGUAJE C++ RESUMEN DE LA BIBLIOTECA DE C++ Entrada/salida . Cadenas Contenedores . Iteradores . Algoritmos . Números Diagnósticos . Utilidades generales . Localización . Soporte del lenguaje . Concurrencia . LENGUAJE C++ Y COMPONENTES DE LA BIBLIOTECA Estructura de un programa Tipos, constantes, variables y estructuras . Referencias Clases . Plantillas . Contenedores de la biblioteca de C++ . Cadenas de caracteres Matrices ASIGNACIÓN DINÁMICA DE MEMORIA . MANIPULACIÓN DE ERRORES VIII PROGRAMACIÓN ORIENTADA A OBJETOS CON C+ AÑADIR UN MENÚ DE OPCIONES . EVITAR LAGUNAS DE MEMORIA COMPILACIÓN SEPARADA . CAPÍTULO 2. PROGRAMACIÓN ORIENTADA A OBJETOS PENSAR EN OBJETOS Clases y objetos . Mensajes y métodos . DISEÑO DE UNA CLASE DE OBJETOS . CONSTRUCTORES HERENCIA . EJERCICIOS RESUELTOS . EJERCICIOS PROPUESTOS CAPÍTULO 3. OTRAS APORTACIONES DE C++ FUNCIONES Partes de una declaración de función . PALABRAS RESERVADAS NUEVAS . COMENTARIOS OPERADORES C++ . PRIORIDAD Y ORDEN DE EVALUACIÓN CONVERSIÓN EXPLÍCITA DEL TIPO DE UNA EXPRESI CONVERSIÓN DEL TIPO void* TIPOS DE DATOS PREDEFINIDOS TIPOS DE DATOS DEFINIDOS POR EL USUARIO IDENTIFICADORES Y ESTRUCTURAS ÁMBITO DE UNA ESTRUCTURA . DECLARACIÓN DE CONSTANTES CALIFICADOR VOLATILE . FLEXIBILIDAD EN LAS DECLARACIONES Declaración en una sentencia . EL OPERADOR DE RESOLUCIÓN DEL ÁMBITO (::) ESPECIFICACIONES DE ENLACE . ARGUMENTOS POR OMISIÓN EN UNA FUNCIÓN FUNCIONES EN LÍNEA . FUNCIONES constexpr MACROS . FUNCIONES SOBRECARGADAS Ambigüedades . OPERADORES SOBRECARGADOS . REFERENCIAS PASO DE PARÁMETROS POR REFERENCIA CONTENIDO IX REFERENCIA COMO VALOR RETORNADO ESPACIOS DE NOMBRES Directriz using EXCEPCIONES LOS OPERADORES new Y delete Operador new . Memoria insuficiente . Operador delete Lagunas de memoria . EJERCICIOS RESUELTOS . EJERCICIOS PROPUESTOS CAPÍTULO 4. BIBLIOTECA ESTÁNDAR ENTRADA Y SALIDA . Flujos de salida . Flujos de entrada Estado de un flujo . Limpiar el buffer asociado con un flujo Validar un dato de entrada . Entrada/salida con formato . Entrada de caracteres Entrada de cadenas de caracteres . Redirección de la entrada y de la salida . BIBLIOTECA ESTÁNDAR DE PLANTILLAS String . Constructores Iteradores Acceso a un carácter . Asignación . Conversiones a cadenas estilo C Comparaciones Inserción Concatenación Búsqueda . Reemplazar . Subcadenas . Tamaño . Operaciones de E/S . Conversiones . Vector . Acceso a los elementos . Iteradores X PROGRAMACIÓN ORIENTADA A OBJETOS CON C++ Tamaño . Eliminar elementos . Buscar elementos . Insertar elementos . Comparaciones Map ALGUNAS UTILIDADES . Conversiones elementales . Configuración regional . Colecciones de valores heterogéneos Soporte para fechas y horas Números seudo-aleatorios . EJERCICIOS RESUELTOS . CAPÍTULO 5. CLASES . DEFINICIÓN DE UNA CLASE Atributos Métodos de una clase . Control de acceso a los miembros de la clase Acceso público . Acceso privado . Acceso protegido . Clases en archivos de cabecera . IMPLEMENTACIÓN DE UNA CLASE MÉTODOS SOBRECARGADOS ARGUMENTOS POR OMISIÓN . PROBAR LA CLASE EL PUNTERO IMPLÍCITO this MÉTODOS Y OBJETOS CONSTANTES . AUTO REFERENCIA INICIACIÓN DE UN OBJETO Constructor Delegación de constructores Constructor explicit . Asignación de objetos Constructor copia SEMÁNTICAS DE MOVIMIENTO Y COPIA . FUNCIONES PREDETERMINADAS Y ELIMINADAS . DESTRUCCIÓN DE OBJETOS Destructor . PUNTEROS COMO ATRIBUTOS DE UNA CLASE . Listas de iniciación . CONTENIDO XI Semántica de movimiento Vector de vectores . MIEMBROS STATIC DE UNA CLASE . Atributos static . Acceder a los atributos static . Métodos static . FUNCIONES AUXILIARES . ATRIBUTOS QUE SON OBJETOS CLASES INTERNAS INTEGRIDAD DE LOS DATOS DEVOLVER UN PUNTERO O UNA REFERENCIA . MATRICES DE OBJETOS FUNCIONES AMIGAS DE UNA CLASE PUNTEROS A MIEMBROS DE UNA CLASE . EJERCICIOS RESUELTOS . EJERCICIOS PROPUESTOS CAPÍTULO 6. OPERADORES SOBRECARGADOS . SOBRECARGAR UN OPERADOR Utilizando una función externa . Utilizando un método de una clase UNA CLASE PARA NÚMEROS RACIONALES SOBRECARGA DE OPERADORES BINARIOS Sobrecarga de operadores de asignación . Sobrecarga de operadores aritméticos . Aritmética mixta . Sobrecarga de operadores de relación . Métodos adicionales Sobrecarga del operador de inserción . Sobrecarga del operador de extracción SOBRECARGA DE OPERADORES UNARIOS . Incremento y decremento Operadores unarios/binarios. CONVERSIÓN DE TIPOS DEFINIDOS POR EL USUARIO Conversión mediante constructores Operadores de conversión . Ambigüedades . ASIGNACIÓN . INDEXACIÓN . LLAMADA A FUNCIÓN DESREFERENCIA SOBRECARGA DE LOS OPERADORES new y delete XII PROGRAMACIÓN ORIENTADA A OBJETOS CON C++ Sobrecarga del operador new Sobrecarga del operador delete . EJERCICIOS RESUELTOS . EJERCICIOS PROPUESTOS CAPÍTULO 7. CLASES DERIVADAS . CLASES DERIVADAS Y HERENCIA DEFINIR UNA CLASE DERIVADA . Control de acceso a la clase base Control de acceso a los miembros de las clas Qué miembros hereda una clase derivada . ATRIBUTOS CON EL MISMO NOMBRE REDEFINIR MÉTODOS DE LA CLASE BASE . CONSTRUCTORES DE CLASES DERIVADAS COPIA DE OBJETOS . DESTRUCTORES DE CLASES DERIVADAS . JERARQUÍA DE CLASES FUNCIONES AMIGAS . PUNTEROS Y REFERENCIAS . Conversiones implícitas Restricciones Conversiones explícitas MÉTODOS VIRTUALES Control override y final . Cómo son implementados los métodos virtuales Constructores virtuales Destructores virtuales . INFORMACIÓN DE TIPOS DURANTE LA EJECUCIÓN Operador dynamic_cast Operador typeid. POLIMORFISMO . CLASES ABSTRACTAS HERENCIA MÚLTIPLE Clases base virtuales Redefinición de métodos de clases base virtu Conversiones entre clases EJERCICIOS RESUELTOS . EJERCICIOS PROPUESTOS CAPÍTULO 8. PROGRAMACIÓN GENÉRICA DEFINICIÓN DE UNA PLANTILLA FUNCIONES GENÉRICAS CONTENIDO XIII Especialización de plantillas de función . Sobrecarga de plantillas de función ORGANIZACIÓN DEL CÓDIGO DE LAS PLANTILLAS Modelo de inclusión Modelo de instanciación explícita CLASES GENÉRICAS . Declaración previa de una clase genérica . Especialización de plantillas de clase Derivación de plantillas . Otras características de las plantillas EJERCICIOS RESUELTOS . EJERCICIOS PROPUESTOS CAPÍTULO 9. EXCEPCIONES EXCEPCIONES DE C++ . MANEJAR EXCEPCIONES Lanzar una excepción . Capturar una excepción . Excepciones derivadas Capturar cualquier excepción . Relanzar una excepción CREAR EXCEPCIONES Especificación de excepciones Excepciones no esperadas . FLUJO DE EJECUCIÓN . CUÁNDO UTILIZAR EXCEPCIONES Y CUÁNDO NO DISEÑO SEGURO CON EXCEPCIONES EJERCICIOS RESUELTOS . EJERCICIOS PROPUESTOS CAPÍTULO 10. GESTIÓN DE RECURSOS . PUNTEROS INTELIGENTES Clases de punteros inteligentes unique_ptr . shared_ptr . weak_ptr . Operar con unique_ptr Miembros de una clase de tipo unique_ptr . Colecciones STL de elementos de tipo unique_ Operar con shared_ptr Operar con weak_ptr EJERCICIOS RESUELTOS . XIV PROGRAMACIÓN ORIENTADA A OBJETOS CON C++ EJERCICIOS PROPUESTOS CAPÍTULO 11. FLUJOS VISIÓN GENERAL DE LOS FLUJOS DE E/S BÚFERES Flujo, búfer, archivo y programa . VISIÓN GENERAL DE UN ARCHIVO . DESCRIPCIÓN DE LOS BÚFERES Y FLUJOS Clase streambuf Clase filebuf Clase ostream Clase istream Clase iostream . Clase ofstream . Clase ifstream . Clase fstream E/S CARÁCTER A CARÁCTER E/S DE CADENAS DE CARACTERES . ENTRADA/SALIDA CON FORMATO . E/S UTILIZANDO REGISTROS . ABRIENDO ARCHIVOS PARA ACCESO SECUENCIAL . Un ejemplo de acceso secuencial ACCESO ALEATORIO A ARCHIVOS EN EL DISCO CADENAS DE CARACTERES Un ejemplo con flujos de cadena ESCRIBIR DATOS EN LA IMPRESORA . EJERCICIOS RESUELTOS . EJERCICIOS PROPUESTOS CAPÍTULO 12. PROGRAMACIÓN CONCURRENTE. CONCEPTO DE PROCESO HILOS Estados de un hilo . Cuándo se debe crear un hilo . BIBLIOTECAS C/C++ PARA PROGRAMAR CON HILOS . CREACIÓN Y DESTRUCCIÓN DE HILOS Pasando argumentos a la función asociada con Espera activa y pasiva . Objetos función Finalización de un hilo SINCRONIZACIÓN DE HILOS Secciones críticas . CONTENIDO XV Exclusión mutua Mutex reentrante . Gestión genérica de un mutex . Semáforos Problema del productor-consumidor con semáfo Variables de condición . Problema del productor-consumidor PLANIFICACIÓN DE HILOS . INTERBLOQUEO . UNA CLASE CHilo PROGRAMACIÓN DE ALTO NIVEL UTILIZANDO HILOS Futuros y promesas . Tareas empaquetadas Tareas asíncronas EJERCICIOS RESUELTOS . EJERCICIOS PROPUESTOS APÉNDICE A. NOVEDADES DE C++ . LITERALES PUROS INFERENCIA DE TIPOS OPERADOR decltype ÁNGULOS DERECHOS EN EL USO DE PLANTILLAS . SENTENCIA for APLICADA A COLECCIONES . LISTA DE INICIACIÓN ENUMERACIONES ENTERO MUY LARGO . PUNTERO NULO . EXPRESIONES CONSTANTES GENERALIZADAS . CONVERSIONES IMPLÍCITAS CONVERSIONES EXPLÍCITAS REFERENCIAS RVALUE Y LVALUE SEMÁNTICAS DE MOVIMIENTO Y COPIA . DECLARACIÓN ALTERNATIVA DE FUNCIÓN . PLANTILLAS variadic CONCEPTO . ENVOLTORIO PARA UNA REFERENCIA . PUNTEROS INTELIGENTES EXPRESIONES LAMBDA . PROGRAMACIÓN CONCURRENTE . APÉNDICE B. LA BIBLIOTECA DE C . ENTRADA Y SALIDA . XVI PROGRAMACIÓN ORIENTADA A OBJETOS CON C++ CADENAS DE CARACTERES CONVERSIÓN DE DATOS FUNCIONES MATEMÁTICAS FUNCIONES DE FECHA Y HORA MANIPULAR BLOQUES DE MEMORIA . ASIGNACIÓN DINÁMICA DE MEMORIA . ARCHIVOS . MISCELÁNEA . APÉNDICE C. ENTORNOS DE DESARROLLO . MICROSOFT VISUAL STUDIO Instalación Escribir una aplicación Depurar la aplicación A tener en cuenta Interfaz de línea de órdenes . CREAR UNA BIBLIOTECA . CODEBLOCKS . Instalación MinGW CodeBlocks . Escribir una aplicación LINUX: INTERFAZ DE LÍNEA DE ÓRDENES El depurador gdb de GNU APÉNDICE D. CÓDIGOS DE CARACTERES ÍNDICE .

Artículos relacionados

Inteligencia Artificial para Estudiantes de Ciencias

Inteligencia Artificial para Estudiantes de Ciencias

Bravo Abad, Jorge

Inteligencia Artificial para estudiantes de ciencias es un manual de introducción a la inteligencia artificial (IA) dirigido a estudiantes de los últimos cursos de titulaciones científicas y a investigadores e investigadoras que deseen incorporar estas herramientas a su práctica profesional. Esta obra parte de una convicción clara: la IA solo resulta verdaderamente útil en cien...

Disponibilidad inmediata

32,64 €

Lo que Preguntamos a Google

Lo que Preguntamos a Google

Rogers, Simon

¿Alguna vez te has preguntado qué pasa por la mente de otras personas, como preguntas absurdas, inquietudes muy íntimas, esperanzas y sueños?En 'Lo que preguntamos a Google', Simon Rogers analiza las conclusiones extraídas del mayor conjunto de datos del mundo. Es una instantánea épica de nuestro cerebro colectivo con dos décadas de historia que sigue creciendo. Lo que revela s...

Disponibilidad inmediata

23,99 €

Generación Ia

Generación Ia

Lázaro Ávila, María

Al debate sobre cómo, cuándo y por qué dar acceso (o no) a niños y adolescentes a las pantallas, móviles y redes sociales, se añade ahora otro ingrediente digital: la inteligencia artificial.En realidad, la IA no es un fenómeno nuevo: llevamos conviviendo con ella desde hace años, muchas veces de forma invisible. Ahora, la «democratización» de aplicaciones y herramientas de IA ...

Disponibilidad inmediata

22,07 €

Ia de Google & Gemini para Dummies

Ia de Google & Gemini para Dummies

Di Bello, Bonaventura

Un libro concebido para quienes desean descubrir y dominar todo el ecosistema de IA de Google: desde el uso diario de Gemini para escribir, crear contenidos y resolver problemas, hasta funciones de búsqueda avanzada y generación de imágenes y videos.Si bien millones de usuarios se han familiarizado rápidamente con ChatGPT, el ecosistema de IA de Google está ganando cada vez más...

Disponibilidad inmediata

19,18 €

Código Limpio. Segunda Edición

Código Limpio. Segunda Edición

Martin, Robert C.

Con la segunda edición de Código limpio, Robert C. Martin ("Uncle Bob") revitaliza la guía clásica para la artesanía del software con perspectivas actualizadas, un alcance más amplio y contenido enriquecido. Esta nueva edición, una reescritura completa del superventas original, está preparada para transformar el modo en que los desarrolladores abordan la creación de código y pr...

Disponibilidad inmediata

60,10 €

Tsunami

Tsunami

Vázquez, Pablo

En los últimos años, más de 10.000 personas han pasado por los cursos de inteligencia artificial de Pablo Vázquez. Personas con perfiles muy diversos, e inquietudes muy similares: «No sé por dónde empezar». «No sé si mi trabajo está en riesgo». «Sé que debería estar haciendo algo, pero no sé el qué». «Tengo hijos, equipo, familia debería poder orientarlos, y no puedo». Es norma...

Disponibilidad inmediata

21,06 €