Как получить индекс максимального элемента в векторе с умными указателями? C++
У меня есть вектор std::vectorstd::unique_ptr<IShape> и у IShape есть метод GetArea(), который возвращает площадь. Так вот есть ли в C++ какой-то алгоритм который позволит индекс элемента с максимальной площадью? Я пробовал через std::max_element с компроматором, но он конечно же не работает, тк как я понимаю уникальный указатель он на то и уникальный не может передаваться в функцию.

Ответы (1 шт):
Автор решения: HolyBlackCat
→ Ссылка
Поменять тип параметров компаратора на const std::unique_ptr<IShape> &.