У мові є лише дві категорії типів, які не можуть мати const-кваліфікації: типи посилань та типи функцій. Отже, якщо це const Tне кваліфікований тип const, це означає, що Tце або тип функції, або тип посилання. Якщо ви можете виключати типи посилань, вам залишаються лише типи функцій.
Зауважте, що тип функції, що містить cv-класифікатор, наприклад int(int) const, не є типом , призначеним для const. Це приклад "непристойного типу функцій", єдине реальне використання якого - складати або розкладати типи функцій вказівника до члена. Тип int(int) constнеможливо отримати, додавши const-кваліфікацію поверх int(int). Скоріше, це constстосується параметра параметр об'єкта.
!is_constчастину.