Легенда:
новое сообщение
закрытая нитка
новое сообщение
в закрытой нитке
старое сообщение
|
- Напоминаю, что масса вопросов по функционированию форума снимается после прочтения его описания.
- Новичкам также крайне полезно ознакомиться с данным документом.
[lj] stlное 29.03.06 22:54
Publisher: dl <Dmitry Leonov>
|
stlное http://leonov.livejournal.com/89932.html
Жутко раздражает, что в stl нет встроенного варианта очистки контейнеров с принудительным вызовом delete для каждого элемента, из-за чего вечно приходится придумывать какие-то подпорки (да, я в курсе про boost::shared_ptr, который можно использовать в контейнерах, но пока не заставил себя на него перейти). Первый вариант моих функций ClearList и ClearMap использовал честный проход итератором по циклу, что несколько раздражало, второй был сделан через for_each и пару классов-функционалов (привет примеру из Мейерсовского Effective STL), что все равно оставляло некую неудовлетворенность громоздкостью и наличием двух классов с чуть разным интерфейсом, нужных только для удаления поступающего на вход объекта. struct DoDelete { template<typename T> void operator()(const T* p) const { delete p; } }; struct DoDeleteMap { template<typename T1, typename T2> void operator()(const pair<T1,T2>& p) const { delete p.second; }...
Полный текст
|
|
|