Код: Выделить всё
g++ -std=gnu++17 -Werror -Wall -Wextra
Следующий код компилируется без предупреждения:
Код: Выделить всё
struct Mutable {
int x;
};
class State {
public:
constexpr const Mutable &Immutable() const {
return mutable_;
}
private:
Mutable mutable_;
} state_instance;
[*] Константсп по существу означает, что функция -член может быть оценена во время компиляции.
Первый констант означает, что возвращаемая ссылка не может быть использован, чтобы использовать объект. /> Второй const < /code> означает, что функция-член обещает не мутировать каких-либо переменных членов. < /li>
< /ul>
Есть ли увольнения? /> Каково использование концентрации для функции неконфессиональной члены?>
Подробнее здесь: https://stackoverflow.com/questions/796 ... -const-qua