В С++ сигнатура функции частично зависит от того, является ли она константой. Это означает, что класс может иметь две функции-члены с одинаковыми сигнатурами, за исключением того, что один является const, а другой - нет. Если у вас есть класс, подобный этому, тогда компилятор решит, какую функцию вызывать на основе объекта, на который вы его называете: если это экземпляр const класса, будет вызываться версия const функции; если объект не const, вызывается другая версия.
В каких обстоятельствах вы можете воспользоваться этой возможностью?