¿Qué son los functors de C ++ y sus usos?

Sigo escuchando mucho sobre los functores en C ++. ¿Alguien me puede dar una visión general de lo que son y en qué casos serían