Affectation de valeurs existantes pour smart-ptrs?

Je suis en train d'apprendre des pointeurs intelligents, et j'ai du mal à l'affectation d'un pré-existante à l'emplacement d'une variable à la bibliothèque standard du pointeur partagé.

Par exemple, disons que vous avez un int x, que vous ne connaissez pas la valeur de. Normales avec les pointeurs, j'ai juste fait

int* ptr;
ptr = &x;

J'ai essayé les deux qu'avec un partage des pointeurs, et

std::tr1::shared_ptr<int> ptr;
ptr = std::make_shared<int> (&x)

Donc je suis assez perdu de quant à la façon de le faire.

Il est extrêmement peu probable que vous souhaitez passer l'adresse d'une variable à un pointeur partagé. Le point de partage des pointeurs est qu'ils gèrent allouée dynamiquement objets.

OriginalL'auteur bluepanda | 2013-11-25