C ++ 11: ¿Pasa (lambda u otra) función objeto por referencia o valor?

Esto fue originalmente parte de esta pregunta:

Pasando lambda declarado usando auto-keyword por referencia no constante como argumento a std :: función tipo de parámetro

Pero decidí hacerlo por separado.

¿En qué circunstancias es mejor / más idiomático pasar un objeto lambda u otra función por referencia o valor?

Respuestas a la pregunta(1)

Su respuesta a la pregunta