Результаты поиска по запросу "unique-ptr"
Исключение безопасности и make_unique
Просто чтобы уточнить, используяmake_unique только добавляет безопасность исключений, когда у вас есть несколько распределений в выражении, а не только одно, правильно? Например void f(T*); f(new T);совершенно безопасен в отношении исключений (в ...
В выражении удаления одного объекта, если статический тип удаляемого объекта отличается от его динамического типа, и выбранная функция освобождения (см. Ниже) не является оператором удаления, статический тип должен быть базовым классом динамический тип объекта, который должен быть удален, и статический тип должен иметь виртуальный деструктор, иначе поведение не определено.
месяцев назад я спросилэто [https://stackoverflow.com/questions/52180485/valgrind-shows-memory-leak-in-stdmake-unique] вопрос, где я спросил, почему произошла утечка памяти. Видимо, я забыл виртуальный деструктор. Теперь я пытаюсь понять, почему ...
Рекомендация: предпочитайте передачу объектов по значению, * или &, а не по умному указателю.
все знают, что необработанных указателей следует избегать, как чумы, и предпочитать умные указатели, но применим ли этот совет при реализации контейнера? Вот что я пытаюсь сделать: template<typename T> class AVLTreeNode { public: T ...
которые являются копиями друг друга, может определить, когда уничтожен последний член семьи.
жные дубликаты: pimpl: shared_ptr или unique_ptr [https://stackoverflow.com/questions/5576922/pimpl-shared-ptr-or-unique-ptr] умные указатели (повышение) объяснил [https://stackoverflow.com/questions/569775/smart-pointers-boost-explained] Может ...
Как использовать пользовательское средство удаления с членом std :: unique_ptr?
У меня есть класс с членом unique_ptr. class Foo { private: std::unique_ptr<Bar> bar; ... };Bar - это сторонний класс, который имеет функцию create () и destroy (). Если бы я хотел использоватьstd::unique_ptr с его помощью в отдельной функции ...
Почему unique_ptr принимает два параметра шаблона, а shared_ptr принимает только один?
Обеunique_ptr [http://www.cplusplus.com/reference/memory/unique_ptr/]а также shared_ptr [http://www.cplusplus.com/reference/memory/shared_ptr/shared_ptr/] принять пользовательский деструктор для вызова объекта, которым они владеют. Но в ...
Как передать аргумент unique_ptr в конструктор или функцию?
Я новичок в перемещении семантики в C ++ 11, и я не очень хорошо знаю, как справитьсяunique_ptr параметры в конструкторах или функциях. Рассмотрим этот класс, ссылающийся на себя: #include <memory> class Base { public: typedef unique_ptr<Base> ...
Как записать unique_ptr в лямбда-выражение?
Я пробовал следующее: std::function<void ()> getAction(std::unique_ptr<MyClass> &&psomething){ //The caller given ownership of psomething return [psomething](){ psomething->do_some_thing(); //psomething is expected to be released after ...
Ну, как работает пользовательское удаление std :: unique_ptr?
Согласно N3290std::unique_ptr принимает аргумент удаления в своем конструкторе. Однако я не могу заставить его работать с Visual C ++ 10.0 или MinGW g ++ 4.4.1 в Windows, а также с g ++ 4.6.1 в Ubuntu. Поэтому я боюсь, что мое понимание этого ...
Должен ли `unique_ptr <T const []>` принимать аргумент конструктора `T *`?
Код: #include <memory> using namespace std; struct T {}; T* foo() { return new T; } T const* bar() { return foo(); } int main() { unique_ptr< T const > p1( bar() ); // OK unique_ptr< T const [] > a1( bar() ); // OK unique_ptr< T const > ...