Результаты поиска по запросу "shared-ptr"

4 ответа

 Вы хотите передать и передать копию в контейнер.

2 ответа

И чтобы иметь общий доступ по умолчанию, вы можете использовать что-то вроде:

сто играю с умными указателями в новом стандарте c ++. Однако я не могу понять использование функции shared_from_this. Вот что у меня есть:

0 ответов

Обновление: эта ошибка все еще существует в обновлении 3 vs2017.

ько что написал тестовую программу, чтобы найти самый быстрый способ выделить и освободить много объектов, которыми управляетshared_ptr. Я пыталсяshared_ptr с участиемnew, shared_ptr с участиемpool, make_shared, allocate_shared, Что меня ...

ТОП публикаций

1 ответ

 в вашем примере он может удалить его без доступа к деструктору базового класса, а поскольку он использует виртуальную диспетчеризацию, тип определяется во время выполнения. Этот метод требует сочетания параметрического и подтипного полиморфизма.

«За пределами стандартной библиотеки C ++: введение в Boost», я получил очень интересный пример: class A { public: virtual void sing()=0; protected: virtual ~A() {}; }; class B : public A { public: virtual void sing( ) { std::cout << "Do re mi ...

16 ответов

 может быть публично удален. Но я полагаю, что не повредит привычке добавлять виртуальные dtors на случай, если они понадобятся позже.

я есть четкое понимание большинства ОО-теорий, но меня смущает одна вещь - виртуальные деструкторы. Я думал, что деструктора всегда называют независимо от того, что и для каждого объекта в цепочке. Когда вы собираетесь сделать их виртуальными и ...

2 ответа

std :: shared_ptr Исключительная безопасность

Я только что понял, чтениеэта страница [http://www.cplusplus.com/reference/memory/shared_ptr/shared_ptr/]что конструктор std :: shared_ptr с одним аргументом указателя не исключение. Следовательно, следующий код содержит возможную утечку ...

3 ответа

Boost не может скомпилировать на нем? Большую часть библиотеки Boost не нужно компилировать для использования, и я думаю, что shared_ptr тоже не нуждается.

отаю на платформе с компилятором gcc, но boost не может скомпилировать его. Мне интересно, как правильно включить shared_ptr в std: tr1 на gcc? файл, в котором я смотрел, сказал, что не включает его напрямую, из того, что я могу сказать, никакой ...

1 ответ

И вот пример того, как вы бы это использовали:

овольно сложно объяснить, но я буду стараться изо всех сил. Итак, у меня есть RenderComponent, EventManager и RenderSystem. В моем конструкторе RenderComponents я вызываю событие renderComponentCreated, на которое подписывается RenderSystem. ...

2 ответа

 только сейчас было бы здорово, если бы вы могли помочь!

решить очень специфическую проблему в моем приложении, мне нужен разделяемый указатель на распределенные данные, но для внешнего мира базовый тип данных должен оставаться скрытым. Я мог бы решить эту проблему, создав некоторый класс Root, ...

5 ответов

Как сделать так, чтобы std :: shared_ptr не вызывал delete ()

У меня есть функции, которые принимают в качестве аргумента std :: shared_ptr, поэтому я вынужден использовать std :: shared_ptr, но объект, который я передаю функции, не выделяется динамически. Как мне обернуть объект в std :: shared_ptr и чтобы ...