Différence entre std :: reference_wrapper et simple pointeur?

Pourquoi est-il nécessaire d'avoir std::reference_wrapper? Où doit-il être utilisé? En quoi est-ce différent d'un simple pointeur? Comment ses performances se comparent-elles à un simple pointeur?