En C++ puede tener contenedores genéricos y de tipo seguro utilizando plantillas. Sin embargo, en C, si desea contenedores genéricos, debe (afaik) utilizar void*
, lo que significa que pierde seguridad del tipo. Para tener contenedores seguros, tendrías que volver a implementarlos para cada tipo de datos que quieras guardar.En C, Envases genéricos o Envases seguros?
Dado que C sigue una más el programador-sabe-qué-hes-hacer filosofía que C++, lo que sería la cosa más idiomática que hacer en C: utilizar contenedores genéricos con void*
, o hacer los envases personalizados para cada tipo de datos?
Bueno, solo definiría los algoritmos que necesita. Pero veo lo que estás diciendo. –
@PaulManta: Sí, me estaba saliendo del ejemplo contenedor que debería manejar tipos arbitrarios. –