Herencia de Plantillas C++ y Construcción de Copias: Un static_assert Intrigante
Este artículo explora un problema intrigante sobre constructores de copia en la herencia de plantillas C++. La clase `Derived` hereda de la clase `Base`, donde el constructor de copia de `Base` está eliminado. Sin embargo, `Derived` define su propio constructor de copia. Aunque este constructor intenta copiar el objeto `Base` no copiable, `std::is_copy_constructible` todavía devuelve verdadero. Esto se debe a que el compilador solo verifica la presencia de un constructor de copia no eliminado, no su capacidad de instanciación. El autor también discute las diferencias entre los constructores de copia explícitamente definidos e implícitamente definidos, y las implicaciones de mover la definición del constructor de copia fuera de línea.