Аналогично контейнеру ptr_map - PullRequest
1 голос
/ 09 октября 2011

Я решил выбросить буст из моего проекта.Любой способ иметь лучший инструмент контейнера вместо ptr_map?Как я знаю, он содержит умный указатель в качестве значения.Может быть, QMap<Key, std::shared_ptr<Type*>> может это сделать?

1 Ответ

3 голосов
/ 09 октября 2011

Что не так с std::map<Key, std::shared_ptr<Type>>?Преимущества перед QMap:

  • стандартное решение
  • имеет лучшие временные границы для худшего случая (QMap - это список пропуска, поэтому ожидаемые временные границы совпадают)
  • 64-битная очистка всякий раз, когда компилятор / библиотека (QMap использует int для размеров)
  • интерфейс больше похож на boost::ptr_map
...