C++ Moderno
$7.99
Precio mínimo
$9.99
Precio sugerido

C++ Moderno

Guía rápida y concisa para programadores

Sobre este libro

Este manual está pensado para programadores; gentes venidas de Java, Python, C# u otros lenguajes orientados a objetos. También por supuesto para amantes y profesionales de C/C++ que necesiten una puesta a punto o simplemente refrescar conceptos.

Este manual nació como un intento de poner orden a las distintas notas y apuntes que he ido redactando con el paso de los años. El manual contiene mucha información y muy concentrada. No es un manual de referencia.

Si necesitas refrescar conceptos, ponerte al día, aprender algo nuevo -como metaprogramación o move-semantics- ó si quieres saber las buenas prácticas más útiles, creo que este manual te será de gran ayuda.

Indice de contenidos:

C++ Moderno

Value Semantics

¿Qué es value-semantics?

Referencias

Constructor

Operaciones especiales

La regla del cero

La regla del tres

Move Semantics

¿Qué es move-semantics?

Propiedades de las expresiones

Ctor move y Assign move

Pass-by-value and move idiom

Exchange

Copy&Swap

Metaprogramación

¿Por qué plantillas?

Two-Phase translation

Tipo de retorno

Argumentos por defecto y sobrecarga

Conceptos

Parámetros no tipos

Variadic Template & Folding

Consideraciones básicas

Template parameters dentro de template parameters

Move semantics

Referencia universal con &&

Uso de std::forward

Implementación de std::foward y std::move

Pointer Semantics

Punteros

RAII

Smart Pointers

¿Cuando usar T*?

Ejemplo

Referencias circulares y weak_ptr

Polimorfismo

¿Por qué no hay un Gargabe Collector?

make_unique y make_shared

STL

Componentes

Iteradores

Adaptadores de iteradores

Ejemplo: Zipper

Algoritmos

C++17

Unpack

Limitando el alcance de la variable en if/switch

Class Template Argument Deduction

if constexpr

Buenas prácticas

Struct vs Class

Pasar argumentos

Devolver diferentes valores

Constructor por defecto

Argumentos por defecto

Bajo número de argumentos

No quites ‘const’, usa mutable

La regla del cero

The Big Five

Usa smart_pointers para indicar propiedad

Expresa las ideas directamente en código

Patrones de diseño

Los principios SOLID

Patrones de diseño

Singleton

Observer

Factory Method

Strategy

Adapter

Algoritmia

Partition Scheme

Quicksort

Quickselect

Maximum Subarray Sum

Subset sum

Edit Distance

Grafo

Graph SSSP

Topological Sort

Minimum Spanning Tree

Sobre el autor

Jorge Moreno Aguilera
Jorge Moreno Aguilera

Programador. C++ / Algoritmia / UE4.

Tabla de contenidos

  • C++ Moderno
  • Value Semantics
    • ¿Qué es value-semantics?
    • Referencias
    • Constructor
    • Operaciones especiales
    • La regla del cero
    • La regla del tres
  • Move Semantics
    • ¿Qué es move-semantics?
    • Propiedades de las expresiones
    • Ctor move y Assign move
    • Pass-by-value and move idiom
    • Exchange
    • Copy&Swap
  • Metaprogramación
    • ¿Por qué plantillas?
    • Two-Phase translation
    • Tipo de retorno
    • Argumentos por defecto y sobrecarga
    • Conceptos
    • Parámetros no tipos
    • Variadic Template & Folding
    • Consideraciones básicas
    • Template parameters dentro de template parameters
    • Move semantics
    • Referencia universal con &&
    • Uso de std::forward
    • Implementación de std::foward y std::move
  • Pointer Semantics
    • Punteros
    • RAII
    • Smart Pointers
    • ¿Cuando usar T*?
    • Ejemplo
    • Referencias circulares y weak_ptr
    • Polimorfismo
    • ¿Por qué no hay un Gargabe Collector?
    • make_unique y make_shared
  • STL
    • Componentes
    • Iteradores
    • Adaptadores de iteradores
    • Ejemplo: Zipper
    • Algoritmos
  • C++17 y C++20
    • Unpack
    • Limitando el alcance de la variable en if/switch
    • Class Template Argument Deduction
    • if constexpr
    • C++20: Módulos
    • C++20: Rangos
  • Buenas prácticas
    • Struct vs Class
    • Pasar argumentos
    • Devolver diferentes valores
    • Constructor por defecto
    • Argumentos por defecto
    • Bajo número de argumentos.
    • No quites ‘const’, usa mutable.
    • La regla del cero
    • The Big Five
    • Usa smart_pointers para indicar propiedad
    • Expresa las ideas directamente en código
  • Patrones de diseño
    • Los principios SOLID
    • Patrones de diseño
    • Singleton
    • Observer
    • Factory Method
    • Strategy
    • Adapter
  • Algoritmia
    • Partition Scheme
    • Quicksort
    • Quickselect
    • Maximum Subarray Sum
    • Subset sum
    • Edit Distance
    • Grafo
    • Graph SSSP
    • Topological Sort
    • Minimum Spanning Tree

Leanpub incondicional, sin riesgo, 100% de felicidad garantizada

Durante los primeros 60 días de compra, puedes obtener un reembolso del 100% de cualquier compra Leanpub, en dos clics. Procesamos las restituciones manualmente, así que puede tomarse unos días en aparecer. Véase términos completos.

80% de regalías. Gana $16 en un libro de $20.

Pagamos 80% de regalías. No es un error tipográfico: ganas $16 en una venta de $20. Si vendemos 5000 copias no reembolsadas de tu libro o curso por $20, ganarás $80,000.

(Sí, algunos autores ya han ganado mucho más que eso en Leanpub.)

De hecho, los autores han ganadomás de $12 millonesescribiendo, publicando y vendiendo en Leanpub.

Aprende más sobre cómo escribir en Leanpub

Actualizaciones gratis. Libre de DRM.

¡Si compras un libro Leanpub obtienes actualizaciones gratis siempre y cuando el autor actualice el libro! Varios autores usan Leanpub para publicar sus libros en progreso mientras los escriben. Todos los lectores obtienen actualizaciones gratis, independientemente de cuándo compraron el libro o cuánto pagaron (incluyendo si fue gratis).

La mayoría de los libros Leanpub se encuentran disponibles en PDF (para computadores) y EPUB (para teléfonos, tabletas, y Kindle). Los formatos que un libro incluye se muestran en la esquina superior derecha de esta página.

Finalmente, los libros Leanpub no tienen ninguna de las cosas sin sentido sobre protección de copia DRM, así que puedes leerlos fácilmente en cualquier dispositivo que se soporta.

Aprende más sobre los formatos de Leanpub y dónde puedes leerlos

Escribir y publicar en Leanpub

Los autores y editores usan Leanpub para publicar libros electrónicos sorprendentes en curso y completados, como éste. ¡También puedes utilizar Leanpub para escribir, publicar y vender tu libro! Leanpub es una potente plataforma para autores serios, que combina un flujo de trabajo de escritura y publicación simple y elegante con una tienda centrada en la venta de libros electrónicos en progreso. Leanpub es una máquina de escribir mágica para los autores: basta con escribir en texto plano, y para publicar tu libro electrónico, simplemente haz clic en un botón. Realmente es así de fácil.

Más información sobre cómo escribir en Leanpub