2009-07-06 7 views
15

Ci sono delle differenze tra boost::shared_ptr, std::tr1::shared_ptr e l'imminente (in C++0x) std::shared_ptr?Differenze tra diversi sapori di shared_ptr

Il porting da uno all'altro ha un sovraccarico o è sostanzialmente lo stesso?

+2

Non direttamente correlato alla tua domanda, ma C++ 0x's unique_ptr sarà un miglioramento su scoped_ptr dove puoi fare cose come questa: std :: unique_ptr p (new int [10]); –

risposta

24

Secondo il sito web Boost, il boost::shared_ptr ...

... è conforme alla specifica TR1, con l'unica eccezione che risiede nel namespace boost invece di std::tr1.

Secondo la Wikipedia C++0x pagina

L'implementazione TR1 mancavano alcune funzioni di puntatore, come aliasing e l'aritmetica dei puntatori, ma la versione C++ 0x potrà effettuare.

Se il codice funziona con la versione TR1/Boost, dovrebbe funzionare con la versione C++ 0x (ma non necessariamente viceversa).

Problemi correlati