2
ответа

Как необходимо возвратиться *это с shared_ptr?

См. также: Подобный вопрос код ниже очевидно опасен. Вопрос: как дела отслеживайте ссылку на *это? использование повышения пространства имен;//класс Определения MyClass MyClass {...
вопрос задан: 23 May 2017 12:12
2
ответа

Как можно использовать boost :: serialization с std :: shared_ptr из C ++ 11?

Я знаю, что есть модуль Boost для сериализации boost :: shared_ptr, но я не могу найти ничего для std :: shared_ptr. Кроме того, я не знаю, как это легко реализовать. Боюсь, что ...
вопрос задан: 4 April 2016 20:43
2
ответа

Это - хорошая практика для передачи scoped_ptr ссылкой (от одного метода до другой внутренней части класс)?

Или если я должен сделать это, затем я должен просто использовать shared_ptr?
вопрос задан: 28 June 2015 14:39
2
ответа

получение нормального ptr от shared_ptr?

У меня есть что-то как shared_ptr <Тип> t (makeSomething (), mem_fun (&Type:: deleteMe)) я теперь должен назвать C разработанной функцией, которая требует, чтобы указатель Ввел. Как я получаю его от shared_ptr?
вопрос задан: 13 April 2015 11:31
2
ответа

повысьте shared_ptr и 'это'

У меня есть два класса с отношениями отцов и детей (customer&order directory&file и т.д.), у меня есть повышение определения типа:: shared_ptr <Родитель> ParentPtr и в родительском классе метод для создания ребенка...
вопрос задан: 22 March 2014 15:16
2
ответа

Почему shared_ptr NULL после броска [duplicate]

У меня есть shared_ptr в C ++, который я хочу бросить как исключение. Я писал тестовый пример, который использовал эквивалентную ситуацию для этого в gcc 6.4.0 и застрял. Я не понимаю, почему x является NULL ...
вопрос задан: 5 June 2013 12:39
2
ответа

intrusive_ptr: Почему общий базовый класс не обеспечивается?

повышение:: intrusive_ptr требует, чтобы intrusive_ptr_add_ref и intrusive_ptr_release были определены. Почему базовый класс не обеспечивается, который сделает это? Здесь существует пример: http://lists.boost.org/...
вопрос задан: 16 March 2013 07:12
2
ответа

Почему enable_shared_from_this имеет невиртуальный деструктор?

У меня есть любимый проект, с которым я экспериментирую с новыми возможностями C++ 11. В то время как у меня есть опыт с C, я довольно плохо знаком с C++. Для обучения меня в лучшие практики, (помимо чтения много), я имею...
вопрос задан: 10 March 2012 04:21
2
ответа

тестирование, если shared_ptr равен NULL

У меня есть следующий фрагмент кода: std :: vector > :: iterator it; it = returnAnIterator (); // часто он указывает на shared_ptr, который имеет значение NULL, и я хочу проверить ...
вопрос задан: 7 August 2010 20:02
2
ответа

C++ статические классы и shared_ptr утечки памяти

Я не могу понять, почему делает следующий код, производят утечки памяти (я использую повышение:: shared_ptr со статическим экземпляром класса). Кто-то мог помочь мне? #include <crtdbg.h> #include <повышают/...
вопрос задан: 1 June 2010 09:38
2
ответа

Могу я использовать повышение:: make_shared с частным конструктором?

Рассмотрите следующее: класс DirectoryIterator; деталь пространства имен {класс FileDataProxy; класс DirectoryIteratorImpl {друг класс DirectoryIterator; друг класс...
вопрос задан: 7 April 2010 07:24
2
ответа

Есть ли любые оборотные стороны с использованием make_shared для создания shared_ptr

Есть ли любые оборотные стороны с использованием make_shared <T> () вместо того, чтобы использовать shared_ptr <T> (новый T). Документация повышения указывает, Там были повторены запросы от пользователей для фабрики...
вопрос задан: 27 January 2010 04:31
2
ответа

Набор специализирован для shared_ptr

Там существует набор, который знает о shared_ptr внутренностях и избегает регулярного копирования сохраненных shared_ptr элементов в пользу просто копирования их внутреннего слабого указателя? Это неявно...
вопрос задан: 5 June 2009 16:12
1
ответ

Тривиальные случаи сбоя shared_ptr и weak_ptr

У меня проблемы с использованием shared_ptr и weak_ptr вместе с enable_shared_from_this. Когда я гуглю симптомы того, что вижу, все говорят: «Вы не можете использовать shared_from_this (), когда ...»
вопрос задан: 17 July 2019 00:24
1
ответ

Структура общих указателей и регистрация обратного вызова. Необработанное значение указателя изменилось, когда обратный вызов вызван по причинам вне меня

Я реализовал интерфейс для регистрации обратных вызовов, но столкнулся с проблемой, которая за мной. В частности, если функция зарегистрирована как обратный вызов с копией структуры ...
вопрос задан: 19 March 2019 15:29
1
ответ

Можно ли сделать доступным только для чтения копируемый (по ссылке) shared_ptr?

Я пытаюсь создать доступный только для чтения shared_ptr, совместно используемый несколькими экземплярами. Ни один из экземпляров не должен иметь возможности изменять содержимое объекта указателя. Но экземпляры должны быть в состоянии ...
вопрос задан: 17 January 2019 14:25
1
ответ

Различия между различными ароматами shared_ptr

Есть ли любые различия между повышением:: shared_ptr, станд.:: tr1:: shared_ptr и предстоящее (в C++ 0x) станд.:: shared_ptr? Будет портирование от одного до другого, имеют любые издержки или они в основном...
вопрос задан: 2 November 2016 08:46
1
ответ

Передача shared_ptr < Derived > как shared_ptr < Base >

Каков наилучший способ передачи shared_ptr производного типа в функцию, которая принимает shared_ptr базового типа? Я обычно передаю shared_ptrs по ссылке, чтобы избежать ненужной копии: ...
вопрос задан: 26 September 2016 03:02
1
ответ

Почему shared_ptr < T > :: use_count () возвращает long вместо типа unsigned?

наблюдатели shared_ptr 20.8.2.2.5 C ++ 14 Final Draft (n4296) long use_count () const noexcept; Возвращает: количество объектов shared_ptr, * включая это, которые совместно используют * с этим, или 0 ...
вопрос задан: 2 April 2016 08:49
1
ответ

Что означает std :: shared_ptr & lt; T & gt; sp (sp2, ptr) делает? [Дубликат]

Копаясь глубоко в стандартной библиотеке C ++, я обнаружил следующую перегрузку конструктора shared_ptr, см. Прикрепленное изображение. Может ли кто-нибудь объяснить, как sp может обмениваться собственностью с другим sp и ссылаться на ...
вопрос задан: 29 May 2015 11:04
1
ответ

Как избежать утечки памяти с shared_ptr?

Рассмотрите следующий код. использование повышения:: shared_ptr; структура B; структура {~A () {станд.:: суд <<"~A" <<станд.:: endl;} shared_ptr <B> b;}; структура B {~B () {станд.:: суд и...
вопрос задан: 25 February 2014 15:08
1
ответ

Как инициализировать shared_ptr, который является членом class?

Я не уверен, как правильно инициализировать shared_ptr, который является членом класса. Можете ли вы сказать мне, подходит ли способ, который я выбрал в C :: foo (), или есть лучшее решение? класс А {...
вопрос задан: 23 August 2010 09:41
1
ответ

shared_ptr Утверждение px! = 0 не удалось

У меня довольно сложное многопоточное приложение (сервер), которое время от времени дает сбой из-за утверждения: /usr/include/boost/smart_ptr/shared_ptr.hpp:418: T * boost :: shared_ptr < < шаблон -...
вопрос задан: 22 August 2010 10:48
1
ответ

Используя статическую функцию инициализатора

В этом изобретенном примере у меня есть статическая функция инициализации, которая выполняется во время создания. Я хотел бы знать если это легальный способ инициализировать _, b _, и c_. Или, это слишком рано в...
вопрос задан: 11 August 2010 19:26
1
ответ

shared_ptr и разрезание

Кто-то, с которым я работал когда-то сказанный, что shared_ptr был небезопасен и будет резать при кастинге от производного класса до базового класса (т.е. upcasting). Например, если было 2 класса A и B где B...
вопрос задан: 22 July 2010 04:19
1
ответ

Как выполнить ковариантные типы возврата при возврате shared_ptr?

использование повышения пространства имен; класс A {}; класс B: общественность {}; класс X {виртуальный shared_ptr <A> нечто ();}; класс Y: общественность X {виртуальный shared_ptr <B> нечто ();}; типы возврата не...
вопрос задан: 22 April 2010 02:02
1
ответ

Получение shared_ptr судьи для появления в doxygen диаграммах сотрудничества

Я сделал достаточно Гугления, чтобы знать это, если у меня есть что-то как класс SubObject {общественность://и тому подобное}; Агрегат класса {общественность: повышение:: shared_ptr <Подобъект> m_ptr;}; я могу добраться...
вопрос задан: 1 March 2010 15:28
0
ответов

Почему enable_shared_from_this встраивает слабый указатель вместо прямого встраивания счетчика ссылок?

Помощник enable_shared_from_this содержит слабый указатель, который устанавливается при создании общего указателя на объект. Это означает, что имеется счетчик ссылок (выделенный отдельно или вместе с ...
вопрос задан: 31 August 2019 19:03
0
ответов

Ошибка компиляции Реализация пользовательского общего указателя с предварительно выделенной памятью [на удержании]

Я читал о том, как работают общие указатели. Я использую std :: shared_ptr и std :: unique_ptr в моем проекте, и они работают хорошо. Однако есть некоторые случаи, когда мне нужно немного (при компиляции ...
вопрос задан: 27 June 2019 20:15
0
ответов

Пользовательские распределители как альтернатива вектору умных указателей?

Этот вопрос касается владения указателями, использования указателей, умных указателей, векторов и распределителей. Я немного заблудился в своих мыслях об архитектуре кода. Кроме того, если этот вопрос имеет ...
вопрос задан: 27 May 2019 10:43