bogiem programowania nie jestem ale zapis w mainie - float Odleglosc(p1,p2) nie ma prawa zadziałać. Przyjmujesz dwa argumenty do funkcji przyjmującej jeden argument.
Dodatkowo nie wydaje mi się, żeby zapis float Odleglosc(argumenty) tutaj zadziałał poprawnie - ale to mój domysł, bo sam się uczę obiektowego dopiero :D
I jest coś takiego, że jeśli parametrem (parametrami) konstruktora jest punkt, to należy wykorzystać konstruktor
kopiujący.
p1(1,1) to jest punkt i wykorzystałeś już konstruktor kopiujący z tego co widzę więc może przeczytaj w wolnej chwili o tych konstruktorach i popatrz jak są deklarowane i czym się różnią, bo przyda Ci się to ;D Sam to przerabiałem niedawno i konstruktor kopiujący mi się często przydawał :) Jakbyś wiedział co i jak to chyba tego zdania byś nie napisał, bo już to zrobiłeś więc no ;d
Nie jestem programistą ale myślę, że conajmniej jedną rzecz dobrze wskazałem więc nie bierz mojej wypowiedzi za pewnik. Ktoś ogarnięty mnie raz dwa poprawi jakbym coś źle napisał ;p
EDIT:
Wydaje mi się, że w mainie to jest poprawny zapis:
https://onlinegdb.com/rkcMKI2yN
Może i się da ładniej to zrobić ale twój zapis nie działa, a mój chyba tak :D