LINUX.ORG.RU

C++ контейнер


0

0

Здравствуйте.

Какой есть контейнер (желательно что-нить вроде stl) для auto_ptr ?

vector< auto_ptr<myClass> > ругается что и понятно...

Велосипидровать не хочу, может есть что подходящее?

Спасибо.

★★★

>Какой есть контейнер (желательно что-нить вроде stl) для auto_ptr ?

Можно написать шаблон который в любой контейнер stl добавляет деструктор удаляющий все указатели в контейнере от begin() до end(). Только работать это не будет, т.к непонятно как в обернутом контейнере будет работать конструктор копирования, конструктор от интервала begin..end и operator= и прочее.

Absurd ★★★
()
Ответ на: комментарий от Absurd

> Можно написать шаблон который в любой контейнер stl добавляет деструктор удаляющий все указатели в контейнере от begin() до end(). Только работать это не будет, т.к непонятно как в обернутом контейнере будет работать конструктор копирования, конструктор от интервала begin..end и operator= и прочее.

интересно, неужели Главный Критик Сыпыпы-На-Лоре никогда не слышал о boost pointer container? даже как то не верится..

// wbr

klalafuda ★☆☆
()

auto_ptr нельзя хранить в контейнере

kitov ★★★
()
Ответ на: комментарий от klalafuda

>> Можно написать шаблон который в любой контейнер stl добавляет деструктор удаляющий все указатели в контейнере от begin() до end(). Только работать это не будет, т.к непонятно как в обернутом контейнере будет работать конструктор копирования, конструктор от интервала begin..end и operator= и прочее.

>интересно, неужели Главный Критик Сыпыпы-На-Лоре никогда не слышал о boost pointer container? даже как то не верится..

boost - говно.

Absurd ★★★
()

Видимо не такое уж и г...вно, раз многие вещи из boost-а включают постепенно в стандартную библиотеку C++. В частности, если вам нужен только shared_ptr и пользуетесь gcc-ом, то откройте для себя

#include <tr1/shared_ptr.hpp>

anonymous
()
Ответ на: комментарий от anonymous

auto_array напиши свой, если буст нельзя. Скопируй текст auto_ptr и замени delete на delete[] и др.

placement_new ★★
()

>Какой есть контейнер (желательно что-нить вроде stl) для auto_ptr ?

а зачем?

jtootf ★★★★★
()
Ответ на: комментарий от klalafuda

>> boost - говно. >> сильное замечание. сразу видно продвинутого чувака.

Лично меня этот "продвинутый чувак" уже достал своим тупым троллением в темах по C++.

Deleted
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.