Estoy trabajando en una colección de clases utilizadas para la reproducción y grabación de videos. Tengo una clase principal que actúa como la interfaz pública, con métodos como play()
, stop()
, pause()
, record()
etc ... Luego tengo clases de caballo de batalla que hacen la decodificación de video y la codificación de video.¿Debo usar clases anidadas en este caso?
Acabo de enterarme de la existencia de clases anidadas en C++, y tengo curiosidad por saber qué piensan los programadores sobre su uso. Estoy un poco cauteloso y no estoy seguro de cuáles son los beneficios/inconvenientes, pero parecen (de acuerdo con el libro que estoy leyendo) para ser utilizados en casos como el mío.
El libro sugiere que en un escenario como el mío, una buena solución sería anidar las clases de caballo de batalla dentro de la clase de interfaz, por lo que no hay archivos separados para clases que el cliente no debe usar, y para evitar cualquier posible nombrando conflictos? No sé sobre estas justificaciones. Las clases anidadas son un concepto nuevo para mí. Solo quiero ver qué piensan los programadores sobre el problema.