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
Añadir a favoritos Consulta disponibilidad

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

Redes Sociales para los Negocios

Redes Sociales para los Negocios

Teruel, María

Este libro está dirigido a emprendedores, marcas personales y pequeñas empresas que desean aprovechar el poder de las redes sociales para crecer, posicionarse y atraer clientes, pero que a menudo se sienten abrumados por la complejidad de los algoritmos, la rapidez de los cambios y la falta de resultados.María Teruel, experta en estrategias de contenido que h...

Disponibilidad inmediata

23,99 €

Fancy Bear se Va de Phishing

Fancy Bear se Va de Phishing

Shapiro, Scott J.

Es una paradoja de nuestros tiempos que vivamos en la sociedad de la información, pero no entendamos cómo funciona. ¿Qué pasaría si supiésemos más? En Fancy Bear se va de phishing, Scott J. Shapiro recurre a su popular clase en la universidad de Yale sobre hackeo para mostrar que el cibercrimen tiene menos que ver con la programación defectuosa que con el cableado imperfecto de...

Disponibilidad inmediata

30,72 €

Ciencia 5. 0

Ciencia 5. 0

Bravo Abad, Jorge

Algoritmos que predicen la estructura de proteínas en minutos, cuando antes hacían falta años. Sistemas que anticipan fenómenos meteorológicos extremos con una precisión inédita. Robots que aceleran el descubrimiento químico combinando hipótesis y experimentos. Redes neuronales que encuentran demostraciones matemáticas donde antes solo había conjeturas. No es ciencia ficción ni...

Disponibilidad inmediata

19,18 €

Mierdificación

Mierdificación

, Cory Doctorow

Estamos viviendo el Enmierdoceno, la Gran Enmierdación, una época en la que los servicios que nos importan se están convirtiendo en enormes montones de mierda. Cuando Cory Doctorow acuñó el término enshittification (enmierdación), estaba haciendo un diagnóstico sobre el estado del mundo digital y cómo afecta a nuestras vidas. Como palabra, captura la esencia de un mundo que emp...

Disponibilidad inmediata

24,04 €

Automatiza las Tareas Aburridas con Python, 3. ª Edición

Automatiza las Tareas Aburridas con Python, 3. ª Edición

Sweigart, Al

No pierdas tiempo haciendo lo que un mono bien adiestrado podría hacer. Aunque nunca hayas escrito ni una línea de código, puedes delegar ese trabajo monótono en tu ordenador. Automatiza las tareas aburridas con Python.En esta tercera edición totalmente revisada de Automatiza las tareas aburridas con Python, aprenderás a usar Python para escribir programas que hagan en minutos ...

Disponibilidad inmediata

60,10 €

Inteligencia Artificial ¿Más Listos o Más Tontos?

Inteligencia Artificial ¿Más Listos o Más Tontos?

González Sánchez, Ramón

Acabas de despertar. Tu asistente de IA ya ha leído tus correos urgentes, organizado tu agenda y reservado tu clase de gimnasio para la tarde. Mientras desayunas, la televisión genera un vídeo que no existía hace un minuto. En el coche, una canción inéd ...

Disponibilidad inmediata

35,58 €