Мне нужно скопировать данные из одного std::map в другой std::map, при условии что эти данные выражены в виде указателей. То есть с помощью оператора присваивания эти данные не копируются, копируются лишь адреса. Вот конкретный пример :
std::map<String, Animation*> listOfAnimations;
listOfAnimations = OtherlistOfAnimations; // Так не работает
Если в mapе хранятся именно объекты Animation, а не его наследники, тогда можно сделать так:
std::map<String, Animation*> listOfAnimations = OtherlistOfAnimations;
for (auto &it : listOfAnimations)
it.second = new Animation(*it.second);
Если задача не учебная, то для хранения в структурах указателей удобнее использовать бустовскую билиотеку. Там реализовано копирование map с копированием объектов. Ну и, кстати, уничтожение объектов при уничтожении контейнера автоматическое.
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости