std::initializer_list: construcción y trampas
Aprende cómo funciona std::initializer_list, su semántica de copia y el peligro de los punteros colgantes.
Aprende cómo funciona std::initializer_list, su semántica de copia y el peligro de los punteros colgantes.
Explica cómo std::invoke unifica la llamada a funciones, lambdas y métodos de clase, junto con herramientas de meta-programación relacionadas.
Guía sobre el uso de structured bindings para desestructurar tuplas, agregados y arrays de forma eficiente en C++17.
Domina find_package, FetchContent y CMakePresets para gestionar dependencias y entornos de compilación de forma profesional.
Aprende a utilizar targets, propiedades de visibilidad (PUBLIC, PRIVATE, INTERFACE) y la propagación de dependencias en CMake moderno.
Domina técnicas para evitar la ruptura de la ABI mediante Pimpl, handles opacos y namespaces inline para el versionado de bibliotecas.
Explora el Application Binary Interface, el layout de memoria, name mangling y por qué los cambios en clases rompen la compatibilidad binaria.
Cómo exponer APIs de C++ a C mediante extern “C”, handles opacos y la gestión segura de excepciones en la frontera de la ABI.
Explica el name mangling de C++, cómo extern “C” permite la interoperabilidad con C y la importancia de manejar excepciones en la frontera.
Guía avanzada sobre optimización de memoria, alineación de caché y estructuras AoS vs SoA para evitar el false sharing en sistemas multihilo.