Sto iniziando a scrivere una libreria e considerando la sua interfaccia. Le librerie precedenti che ho scritto usano tutte i puntatori raw (sia internamente che nella sua interfaccia), e ora voglio provare la libreria di puntatori intelligenti che viene fornita con VS2010.Se una libreria utilizza un'interfaccia che utilizza puntatori intelligenti?
- L'interfaccia deve utilizzare indicatori intelligenti? (Forse anche costringendo gli utenti della biblioteca a utilizzare puntatori intelligenti?)
- Sarebbe complicato se l'interfaccia utilizza puntatori grezzi ma la libreria utilizza internamente puntatori intelligenti? (È anche possibile? Shared_ptr non ha un metodo release() ...)
- È possibile utilizzare due librerie di puntatori intelligenti compatibili con C++ 0x (ad esempio boost e VS2010) in modo intercambiabile? (Per esempio io uso VS2010 a scrivere la mia biblioteca e gli utenti utilizzano spinta)
Aiutateci :)
1. Sì, si prega di forzare gli utenti a formulare buone pratiche di programmazione. :) – GManNickG