get_x e get_y restituiscono un double (e non un riferimento a double), per cui stai passando un rvalue ad un costruttore che si aspetta due riferimenti non costanti a double (che quindi devono essere degli lvalue).
Per risolvere:
- o cambi il costruttore in modo che accetti dei normali double invece che dei riferimenti a double (cosa più sensata, perché il costruttore dovrebbe ricevere quei double per riferimento?)
- o lo cambi in modo che accetti dei const double & (i riferiment const possono riferirsi a degli rvalue) (ma non ha molto senso).
... ma come vedi il C++ è un linguaggio piuttosto complicato, arrangiarsi in qualche maniera è la maniera peggiore possibile di impararlo.