Questions sur shared-ptr

8
réponses

Devons-nous transmettre un RTR partagé par référence ou par valeur?

quand une fonction prend un shared_ptr (de boost ou C++11 STL), vous le Passez: par const référence: ... ous s'il vous plaît donner les raisons de votre choix ou si le cas, pourquoi vous pensez qu'il n'a pas d'importance.
demandé sur 2010-07-22 19:48:24
11
réponses

Quand est-ce que std:: faible ptr est utile?

j'ai commencé à étudier les pointeurs intelligents de C++11 et je ne vois pas d'utilisation utile de std::weak_ptr . Est-ce que quelqu'un peut me dire quand std::weak_ptr est utile/nécessaire?
demandé sur 2012-08-20 03:00:05
4
réponses

Différences entre le ptr unique et le ptr partagé [dupliquer]

duplicata possibles: pimpl: shared_ptr ou unique_ptr smart pointers (boost) expliqué Quelqu'un pourrait-il expliquer les différences entre shared_ptr et unique_ptr?
demandé sur 2011-07-29 21:26:00
14
réponses

Comment puis-je appeler:std::faire partager sur une classe avec seulement les constructeurs protégés ou privés?

j'ai ce code qui ne fonctionne pas, mais je pense que l'intention est claire: testmakeshared.cpp ... faire un objet de cette classe qui n'est pas pointé par un ::std::shared_ptr . Est-il un moyen pour accomplir cette?
demandé sur 2011-11-16 09:11:36
17
réponses

C++ - passer des références à std:: partagé ptr ou boost:: partagé ptr

si j'ai une fonction qui doit fonctionner avec un shared_ptr , ne serait-il pas plus efficace de lui transmettre une ré ... points chauds. Ma question était plus de purement point de vue du code technique, si vous voyez ce que je veux dire.
demandé sur 2008-11-29 17:27:31
3
réponses

Dois-je transmettre un RTR partagé par référence? [dupliquer]

cette question a déjà une réponse ici: Devrions-nous passer un shared_ptr par réf ... passe les arguments de la fonction shared_ptr comme ceci: void function1( shared_ptr<TYPE>& value );
demandé sur 2011-12-05 16:40:57
7
réponses

Exemple pour utiliser le RTPP partagé?

Bonjour j'ai posé une question aujourd'hui sur Comment insérer différents types d'objets dans le même tableau vecto ... foo_ptr( new Foo( 2 ) ); foo_vector.push_back( foo_ptr ); ........... } et je ne comprends pas la syntaxe!
demandé sur 2010-08-13 16:48:24
2
réponses

Quelle est la différence entre une norme vide et une norme nulle::partagée ptr en C++?

le cplusplus.com shared_ptr page établit une distinction entre un vide std::shared_ptr et un nul shared_p ... ? et est-ce que l'une de ces réponses change si vous utilisez la version Boost au lieu de la version C++11?
demandé sur 2014-09-18 23:16:55
2
réponses

std:: part de ce RTP

j'essaie actuellement d'apprendre à utiliser des pointeurs intelligents. Cependant, en faisant quelques expériences, j ... btenir un boost::shared_ptr pour this ), mais comment gérer cela à l'aide des pointeurs intelligents std:: ?
demandé sur 2012-07-29 20:47:34
8
réponses

Dois-je passer de l'utilisation de boost::ptr à std::ptr?

je voudrais activer le support pour C++0x dans GCC avec -std=c++0x . Je n'ai pas absolument besoin des fonctionnalités ... e fais tout simplement pas confiance à son soutien dans GCC 4.5 comme montré par exemple dans cette question .
demandé sur 2011-06-12 17:38:15
2
réponses

Pourquoi le ptr unique prend-il deux paramètres de template alors que le ptr partagé n'en prend qu'un?

les deux unique_ptr et shared_ptr acceptent un destructeur personnalisé pour faire appel à l'objet qu'ils pos ... hared_ptr(T*, D); //simplified ... }; je ne vois pas pourquoi une telle différence. Ce qui implique que?
demandé sur 2014-01-25 23:15:06
4
réponses

C++11 lors de la compensation de PTR partagé, devrais-je utiliser reset ou set to nullptr?

j'ai une question sur les meilleures pratiques C++11. Lors du nettoyage d'un shared_ptr, devrais-je utiliser le reset() ... std::string("foo")); foo.reset(); foo = nullptr; Est-il une réelle différence, ou il y a des avantages/inconvénients?
demandé sur 2013-04-22 20:03:08
13
réponses

Quels sont les dangers potentiels lors de l'utilisation de boost::ptr?

quelles sont les façons dont vous pouvez vous tirer dans le pied en utilisant boost::shared_ptr ? En d'autres termes, quels écueils dois-je éviter lorsque j'utilise boost::shared_ptr ?
demandé sur 2009-03-31 19:05:57
4
réponses

Dois-je utiliser un RTR partagé ou un RTR unique?

j'ai fait quelques objets en utilisant l'idiome pimpl, mais je ne suis pas sûr d'utiliser std::shared_ptr ou ... iser std::shared_ptr et autoriser les copies est une sorte d'anti-modèle ou mauvaise chose. est-ce exact?
demandé sur 2011-04-07 10:30:11
4
réponses

Comment supprimer intentionnellement un boost:: PTR partagé?

j'ai beaucoup boost::shared_ptr<MyClass> les objets, et à un certain moment, j'ai volontairement voulez delete certa ... -être juste assigner un nouveau vide boost::shared_ptr à la variable? Cela devrait jeter l'ancienne valeur et l'effacer.
demandé sur 2009-03-07 06:15:00
2
réponses

obtenir un ptr normal à partir de ptr partagé?

j'ai quelque chose comme shared_ptr<Type> t(makeSomething(), mem_fun(&Type::deleteMe)) Je dois maintenant appeler la fonction de style C qui nécessite un pointeur vers Type. Comment puis-je l'obtenir à partir d' shared_ptr?
demandé sur 2009-02-03 01:01:46
17
réponses

Quelle est votre convention pour le PTR partagé?

je change de nom entre les conventions de nommage pour typedef'ing the boost:: shared_ptr template. Par exemple: typedef ... class Foo { public: typedef std::vector<Foo> Vector }; vous ne le feriez pas maintenant, voulez-vous? : -)
demandé sur 2010-04-27 02:40:50
1
réponses

Cohabitation de boost:: partagé ptr et std:: partagé ptr

je veux utiliser boost::log à un moment donné, mais je ne peux pas passer un std::shared_ptr comme paramètre, parce que ... sur l'autre? Je ne pense pas que c'est une copie de cette question qui dit que les deux sont les mêmes.
demandé sur 2012-09-07 13:02:19
7
réponses

Pourquoi un ptr faible ne peut-il pas être construit à partir d'un ptr unique?

Si je comprends bien, un weak_ptr n'augmente pas le nombre de référence de l'objet géré, donc il ne représente pas la prop ... r ne peut pas être construit à partir d'un unique_ptr, mais seulement un shared_ptr. quelqu'un Peut-il expliquer cette?
demandé sur 2015-03-15 12:58:27
4
réponses

boost, partagé ptr Vs faible ptr? Pour l'utiliser quand?

dans mon projet actuel j'utilise boost::shared_ptr assez largement. récemment, mes coéquipiers ont aussi commencé à uti ... ir weak_ptrshared_ptr. Ne mettre un verrou sur weak_ptr pour créer un shared_ptr affecter mon code dans un autre thread?
demandé sur 2010-01-10 08:13:57
4
réponses

C++ smart pointer const rectitude

j'ai quelques conteneurs dans une classe, par exemple, vecteur ou carte qui contiennent shared_ptr pour les objets de la ... ancier les classes comme suit: MyExample<const int> ? Qui semble trop restrictif, parce que je ne peux jamais rendre a
demandé sur 2010-01-17 05:21:41
12
réponses

Comment (ne pas) faire dans un constructeur

je veux vous demander votre meilleures pratiques en matière de constructeurs en C++. Je ne suis pas tout à fait sûr de ce ... on. Ensuite, j'ai besoin d'un pointeur. Je ne sais vraiment pas comment décider. Peut-être que vous pouvez aider moi?
demandé sur 2010-10-11 15:32:35
4
réponses

std:: partage de la sécurité du fil ptr

j'ai lu que " plusieurs threads peuvent simultanément lire et écrire différents shared_ptr objets, même lorsque le ... a fonctionne, je peux mettre à jour la configuration de cette façon sans la casser au milieu d'un traitement de requête.
demandé sur 2013-01-23 19:09:04
3
réponses

Pourquoi les deleters de ptr partagés doivent-ils être Copyconstructibles?

En C++11 std::shared_ptr a quatre constructeurs qui peuvent être transmis deleter objets d de type D . Les signa ... l'écriture de deleters pour shared_ptr . unique_ptr semble avoir de bien meilleures exigences pour son deleter.
demandé sur 2016-04-20 15:45:35
2
réponses

La Conversion de boost::ptr à std::ptr?

j'ai une bibliothèque qui utilise en interne de Boost version de shared_ptr et n'expose que ceux. Pour mon application, j' ... objet ref-count? Ou au moins voler le ref-count de la version Boost et ne laisser la version stdlib prendre soin de il?
demandé sur 2011-06-13 08:45:22
1
réponses

Comment initialiser un ptr partagé qui est membre d'une classe?

je ne suis pas sûr au sujet d'un bon moyen pour initialiser un shared_ptr c'est un membre d'une classe. Pouvez-vous me dir ... pa = new A; mA = boost::shared_ptr<A>(pa); B* pB = new B(pa); mB = boost::shared_ptr<B>(pb); }
demandé sur 2010-08-23 11:20:16
5
réponses

Comment fonctionnent les indicateurs partagés?

comment les pointeurs partagés savent - ils combien de pointeurs pointent vers cet objet? (shared_ptr, dans ce cas)
demandé sur 2010-05-10 17:32:27
4
réponses

Comment les pointeurs intelligents choisissent-ils entre supprimer et supprimer[]?

prendre en considération: delete new std :: string [2]; delete [] new std :: string; tout le monde sait ... 2]; // Compile error delete foo; // Compile error delete [] bar; // Compile error
demandé sur 2012-01-20 15:44:51
5
réponses

Est-ce que boost partage le fil RTR?

j'ai une question à propos de boost::shared_ptr<T>. il y a beaucoup de fil. using namespace boost; class CResour ... code avez un problème? je veux dire quand Thread_B ne pas SetResource() complètement Thread_A une fausse smart point par
demandé sur 2009-03-28 11:21:16
3
réponses

std::ptr initialisation: faire partagé () vs partagé ptr (new Foo) [en double]

cette question a déjà une réponse ici: la Différence dans make_shared et normal s ... i? P.S. à peu près sûr que cela a déjà dû être répondu, mais je ne peux pas trouver une question similaire.
demandé sur 2013-08-18 20:56:37