Si una función devuelve un int, ¿se le puede asignar un int?

Si una función devuelve un int, ¿se le puede asignar un valor int? No veo que tenga mucho sentido asignar un valor a una función.

int f() {}

f() = 1;

Noté que, si la función devuelve una referencia a un int, está bien. ¿Está restringido solo a int? ¿Qué tal otros tipos? o alguna otra regla?

int& f() {}

f() = 1;

Respuestas a la pregunta(4)

Su respuesta a la pregunta