const функции в классе
Функция класса, объявленная const, трактует this как указатель на константу. Вообще тип this в методе класса X будет X*. Но если метод класса объявлена как const, то тип this будет const X*. В таких методах не может быть ничего присвоено переменным класса, которые не объявлены как static или как mutable (о mutable потом). Также const-функции не могут возвращать не const ссылки и указатели на данные класса и не могут вызывать не const функции класса. const-функции иногда называют инспекторами (inspector), а остальные мутаторами (mutator). Я пыталась найти для mutator перевод, который будет звучать получше, но в переводах я ничего подходящего не встречала, а Яндекс.Лингво смог мне предложить только "ртутный вентиль", что сюда явно не подходит.
Взято вот здесь:
http://alenacpp.blogspot.com/2005/09/const-2.html