Некие объекты имели контейнеры. Но не контейнеры объектов, а контейнеры указателей. И, как водится, перед удалением этих контейнера в деструкторе был подобный код:
CTableContainer::iterator TableIt;Недолго думая, прикрутил к контейнерам (через шаблон) деструктор, который все это делает сам. Получились такие "умные контейнеры указателей" - сами удаляют за собой свои объекты.
for (TableIt = Tables.begin();
TableIt != Tables.end();
TableIt++)
{
delete *TableIt;
*TableIt = NULL;
}
И вот только тогда, когда все это реализовал, подумал - ведь не я первый с этой проблемой сталкиваюсь - контейнеры указателей. Раз их в стандартной библиотеке нет, то видимо они долны быть в Boost. Немного полистав документацию Boost, я нашел то, что было нужно - Pointer Container Library.