Возвращает список неконстантных указателей по константной ссылке на список константных указателей - PullRequest
1 голос
/ 28 мая 2019

Я сталкиваюсь с этой проблемой, когда один из моих объектов имеет список shared_ptr для какого-либо объекта. поэтому тип такой: list<shared_ptr<some_object>>. Но интерфейс, который я реализую, требует, чтобы этот список был возвращен функцией со следующей подписью

const list<shared_ptr<const some_object>>& getObjList().

Компилятор не позволит мне вернуть мой список, поскольку list<shared_ptr<const some_object>>& и list<shared_ptr<some_object>>& не могут быть преобразованы друг в друга. Могу ли я в любом случае вернуть требуемый список, не создавая копию, элементы которой shared_ptr<const some_object>?

...