Какова цель const в этом?
const Object myFunc(){
return myObject;
}
Я только начал читать Effective С++, а пункт 3 защищает это, и поиск в Google поднимает аналогичные предложения, но также и контрпримеры. Я не вижу, как использование const здесь было бы предпочтительнее. Предполагая, что возвращение по значению желательно, я не вижу причин для защиты возвращаемого значения. Приведенный пример, почему это может быть полезно, - это предотвращение непреднамеренных отклонений bool от возвращаемого значения. Фактическая проблема заключается в том, что неявные команды bool должны быть предотвращены с явным ключевым словом.
Использование const здесь предотвращает использование временных объектов без назначения. Поэтому я не мог выполнять арифметические выражения с этими объектами. Кажется, что когда-либо случалось, что неназванный const полезен.
Что получается при использовании const здесь и когда было бы предпочтительнее?
EDIT: измените пример арифметики на любую функцию, которая модифицирует объект, который вы хотите выполнить перед назначением.