Когда спецификатор mutable используется в объявлении нестатического элемента данных, данные изменяются независимо от того, рассматривается ли остальная часть объекта как const. С этим фактом мы можем легко создать впечатление, что спецификатор mutable является тем же самым типом, что и const, который оказывается неверным. Фактически, язык классифицирует спецификатор mutable как спецификатор класса хранения. Это довольно противоречиво, потому что mutable не определяет продолжительность хранения.
Каковы обоснования этого дизайнерского решения?
Что сделало бы его менее логичным, чем казалось бы, если mutable был квалификатором?
В чем преимущества создания спецификатора класса хранения?