shared-ptr

Różnica w make shared i normal shared ptr w C++

std::shared_ptr<Object> p1 = std::make_shared<Object>("foo"); std::shared_ptr<Object> p2(new Object("foo")) ... ych przez oba tak, abym mógł zrozumieć, jak make_shared jest wydajny. Podałem jeden przykład powyżej w celach informacyjnych.

Różnice między unikalnym PST a wspólnym PST [duplikat]

Możliwe duplikaty:pimpl: shared_ptr lub unique_ptrInteligentne Wskaźniki (boost) wyjaśnione Może ktoś wyjaśnić różnice między shared_ptr i unique_ptr?

Czy powinniśmy przekazać współdzielony PST według referencji czy wartości?

Gdy funkcja przyjmuje shared_ptr (z boost lub C++11 STL), czy przekazujesz ją: Autor: const reference: void foo(const shar ... odatkowe problemy? Czy mógłby Pan podać powody swojego wyboru lub, jeśli sprawa, dlaczego uważa pan, że to nie ma znaczenia?

Korzystanie z inteligentnych wskaźników dla członków klasy

Mam problem ze zrozumieniem użycia inteligentnych wskaźników jako członków klasy w C++11. Dużo czytałem o inteligentnych wska ... ; myDevice = settings.getDevice(); // do something with myDevice... } Czy to jest sposób, aby przejść? Dziękuję bardzo!

Kiedy std:: weak PST jest przydatny?

Zacząłem studiować Inteligentne Wskaźniki C++11 i nie widzę żadnego użytecznego zastosowania std::weak_ptr. Czy ktoś może mi powiedzieć kiedy std::weak_ptr jest przydatne / konieczne?

współdzielony PST do tablicy: czy należy go używać?

Tylko małe zapytanie dotyczące shared_ptr. Czy dobrą praktyką jest używanie shared_ptr Wskazywania tablicy? Na przykład, ... świadomy, jest to, że nie można zwiększyć/zmniejszyć shared_ptr. Dlatego nie może być używany jak zwykły wskaźnik do tablicy.

C++ - przekazywanie odniesień do std:: shared ptr lub boost:: shared ptr

Jeśli mam funkcję, która musi pracować z shared_ptr, czy nie byłoby bardziej efektywne przekazanie jej odniesienia do niej (a ... potem-pracować-na-hotspotach. Moje pytanie było bardziej z czysto technicznego punktu widzenia, jeśli wiesz, co mam na myśli.

Jak wywołać:std:: make shared on a class with only protected or private constructors?

Mam ten kod, który nie działa, ale myślę, że intencja jest jasna: testmakeshared.cpp #include <memory> class A { ... obiec tworzeniu obiektu tej klasy, który nie jest wskazywany przez ::std::shared_ptr. Czy jest jakiś sposób, aby to osiągnąć?

wspólne PST i słabe różnice w PST

Czytam książkę Scotta Meyersa " efektywne C++". Wspomniano, że istnieją tr1::shared_ptr i tr1::weak_ptr działają jak wbudowan ... sza niż zero. Uprzejmie proszę o przykładowy program C++. Jak rozwiązuje problem weak_ptrs? (jeszcze raz, proszę o przykład).

Przekazywanie współdzielonych wskaźników jako argumentów

Jeśli zadeklaruję obiekt zawinięty w współdzielony Wskaźnik: std::shared_ptr<myClass> myClassObject(new myClass()); ... j czytelne i nie przewiduję przesuwania limitów wydajności. Chcę się upewnić, że nie ma w tym nic niebezpiecznego. Dziękuję.

Dlaczego działa STD:: shared ptr

Znalazłem jakiś kod używając STD:: shared_ptr do wykonania dowolnego czyszczenia przy zamykaniu. Na początku myślałem, że ten ... tandard, czy może dalsze zmiany w wewnętrznych implementacjach std:: shared_ptr, inne implementacje faktycznie łamią ten kod?

Różnica między 'const shared PST' a 'shared PST'?

Piszę metodę accessor dla współdzielonego wskaźnika w C++, która wygląda tak: class Foo { public: return_type getBar() ... estem pewien. I ' d doceniam to, jeśli ktoś, kto wie na pewno może to potwierdzić, lub poprawić mnie, jeśli się mylę. Dzięki!

Przykład użycia współdzielonego PST?

Witam zadałem dzisiaj pytanie o Jak wstawić różne typy obiektów w tej samej tablicy wektorowej i mój kod w tym pytaniu to ... o_vector; ........ FooPtr foo_ptr( new Foo( 2 ) ); foo_vector.push_back( foo_ptr ); ........... } I nie rozumiem składni!

Koszt przejazdu przez wspólny PST

Używam STD::tr1:: shared_ptr intensywnie w całej mojej aplikacji. Obejmuje to przekazywanie obiektów jako argumentów funkcji. ... ra kopiującego, ale ogólnie jestem bardzo zadowolony ze zmniejszeniem związanego z tym czasu pracy. Dzięki wszystkim za Rady.

Współdzielenie boost:: wspólne PST i std:: wspólne PST

Chcę użyć boost::log w pewnym momencie, ale nie mogę przekazać std::shared_ptr jako parametru, ponieważ kompilator (VS2010) n ... ak aby nie potknąć się o siebie? Nie wydaje mi się, że jest to duplikat tego pytania, które stwierdza, że oba są takie same.

static cast with boost:: shared PST?

Jaki jest odpowiednik static_cast z boost::shared_ptr? Innymi słowy, jak mam przepisać następujące Base* b = new Derived() ... b); Podczas używania shared_ptr? boost::shared_ptr<Base> b(new Derived()); boost::shared_ptr<Derived> d = ???

Jaka jest różnica między pustym a null STD:: shared ptr w C++?

The cplusplus.com shared_ptr Strona wywołuje rozróżnienie pomiędzy pustą std::shared_ptr oraz null shared_ptr. cppreferenc ... pustym-ale-non-null shared_ptr? A czy któraś z tych odpowiedzi zmienia się, jeśli używasz wersji Boost zamiast wersji C++11?

Jakie są potencjalne zagrożenia podczas korzystania z trybu boost:: shared PST?

Jakie są sposoby na strzelanie sobie w stopę podczas używania boost::shared_ptr? Innymi słowy, jakich pułapek muszę unikać, gdy używam boost::shared_ptr?

Gdzie znajduje się wspólny PST?

Jestem teraz tak sfrustrowany po kilku godzinach, próbując znaleźć, gdzie znajduje się shared_ptr. Żaden z przykładów, które ... memory.hpp] i [boost/tr1/tr1/memory] szukając wszędzie shared_ptr.. oczywiście, nie mogłem. Dzięki za wszystkie odpowiedzi.

std:: wspólne bezpieczeństwo wątku ptr wyjaśnione

Czytam http://gcc.gnu.org/onlinedocs/libstdc++/manual/shared_ptr.html i niektóre problemy z bezpieczeństwem wątku nadal nie ... zastąpienie jej nową instancją? Ponadto po wywołaniu reset() w wątku IV inne wątki będą widzieć tylko nowo utworzony obiekt?