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

5 ответов

shared_ptr против scoped_ptr

1 ответ

Преимущества использования BOOST shared_array по сравнению с shared_ptr

2 ответа

Смешивание C ++ и Objective-C

Я использую C ++ в качестве основы приложения и Objective-C для графического интерфейса, это нормально. Но когда дело доходит до смешивания этого кода в Objective-C ++ (файл .mm), у меня возникает несколько вопросов: 1. Могу ли я смешивать ...

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

0 ответов

Почему оператор-> может быть перегружен вручную?

1 ответ

«Даункинг»: от unique_ptr <Base> до unique_ptr <Derived>

У меня есть ряд заводов, которые возвращаютunique_ptr<Base>, Под капотом, однако, они предоставляют указатели на различные производные типы, т.е.unique_ptr<Derived>, unique_ptr<DerivedA>, unique_ptr<DerivedB>и т.п. ДаноDerivedA : Derived а ...

6 ответов

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

3 ответа

C ++ 11: Заменить все не владеющие необработанными указателями на std :: shared_ptr ()?

С появлениемstd::unique_ptrпорочныйstd::auto_ptr наконец можно положить на отдых. В течение последних нескольких дней я изменял свой код, чтобы использовать умные указатели и устранять всеdelete из моего кода. Хотя Вальгринд говорит, что мой код ...

6 ответов

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

Я помню, как читал где-то, что использование ссылок на умные указатели может привести к повреждению памяти. Это просто из-за использования ссылки умного указателя после его уничтожения? Или подсчет ссылок испортился? Спасибо за разъяснение

2 ответа

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

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

4 ответа

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

+ мы можем сделать это: struct Base { virtual Base* Clone() const { ... } virtual ~Base(){} }; struct Derived : Base { virtual Derived* Clone() const {...} //overrides Base::Clone }; Тем не менее, следующее не будет делать то же самое: struct ...