Funkcja porownujaca obiekty

0

Witam wszystkich.Prubuje napisac funkcje, porównującą 2 obiekty.Chciałem to zrobic przy pomocy przeciazania operatorów, ale nie chce mi zadziałać.Szukałem w google i nie moge znalezc takiego przykładu.To ma byc funkcja zaprzyjazniona.

#include"punkt3D.h"
#include <iostream.h>

  punkt3D :: punkt3D(float p1=0.0,float p2=0.0,float p3 = 0.0)
{
  x=p1, y=p2, z=p3;
}

  punkt3D :: ~wektor3w(){}

  friend bool Porownaj(punkt3D&,punkt3D&);

                        
   punkt3D operator==(punkt3D& ob1,punkt3D& ob2) {
        return (ob1.x == ob2.x) && (ob1.x == ob2.x) && (ob1.x == ob2.x);
   }
0

Operator "==" jest operatorem porównania, więc zwraca wartość true/false.

Zmień
punkt3D operator==(punkt3D& ob1,punkt3D& ob2)
na
bool operator==(punkt3D& ob1,punkt3D& ob2)

Powinno pomóc.

0

nie zapomnij o dodaniu const do każdego argumentu!

ha. Poza tym cały czas porównujesz x :)

na dodatek tak się nie porównuje liczb zmiennoprzecinkowych.

1 użytkowników online, w tym zalogowanych: 0, gości: 1