Generische Funktion zum Vergleich von Objekten verschiedener Klassen in der „Tiefe“?C++

Programme in C++. Entwicklerforum
Guest
 Generische Funktion zum Vergleich von Objekten verschiedener Klassen in der „Tiefe“?

Post by Guest »

Ist es möglich, eine generische Funktion zu schreiben, die Objekte verschiedener Klassen vergleichen kann, die nicht „operator==“ definieren, etwa:

Code: Select all

template
bool Compare(T obj1, T obj2) {
...?...
}

class Class1 {
int i;
int *pi;
};

class Class2 {
char c;
char *pc;
std::string *ps;
};

Class1 a1, b1;
Initialise...
bool c1 = Compare(a1, b1);

Class2 a2, b2;
Initialise...
bool c2 = Compare(a2, b2);
Wo die Werte, auf die verwiesen wird, auch verglichen werden, d. h.:

Code: Select all

*a1.pi == *b1.pi
Wenn ich die Speicherblöcke der beiden Objekte vergleichen würde, würde ich etwa Folgendes erhalten:

Code: Select all

a1.pi == b1.pi

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post