Думаю, вопрос достаточно ясен. Будет ли autoключевое слово автоматически определять константу или всегда возвращать неконстантный тип, даже если есть, например. две версии функции (одна возвращает, constа другая - нет).
Для протокола: я использую const auto end = some_container.end()перед циклами for, но не знаю, необходимо ли это или даже отличается от обычного auto.
cbeginиcendвернутьconst_iteratorпо значению.const autoпо-прежнему имеет свое предназначение и не является избыточным.