Estoy empezando a escribir una biblioteca y teniendo en cuenta su interfaz. Las bibliotecas anteriores que he escrito utilizan punteros sin procesar (tanto internamente como en su interfaz), y ahora quiero probar la biblioteca del puntero inteligente que viene con VS2010.¿Debería una biblioteca usar una interfaz que utiliza punteros inteligentes?
- ¿La interfaz debe usar punteros inteligentes? (Posiblemente forzando a los usuarios de la biblioteca a usar punteros inteligentes también?)
- ¿Sería complicado si la interfaz utiliza punteros sin procesar pero la biblioteca utiliza punteros inteligentes internamente? (¿Es posible? Shared_ptr no tiene un método de liberación() ...)
- ¿Se pueden usar de forma intercambiable dos bibliotecas de punteros inteligentes compatibles con C++ 0x (por ejemplo, boost y VS2010)? (Por ejemplo yo uso VS2010 para escribir mi biblioteca y los usuarios usar Boost)
favor ayuda :)
1. Sí, forza a tus usuarios a formar buenas prácticas de programación. :) – GManNickG