• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 379
  • Last Modified:

Checking equality in complex objects

Hi Experts,

I have a large object(by large, I mean it has many member objects) and need to provide a
isEqaul( ) function to test for equality.  What is the best way to compare equality in large objects.
I read about using hashing.  Can you provide an example?
Thank you.
1 Solution
evilrixSenior Software Engineer (Avast)Commented:
Why provide an isEqual function? Why not just override the equality test operator? All you have to do is test equality of all the members. Why make it any more complicated that than? For example...
class MyClass
   bool operator == (MyClass const & rhs) const
      return a_ = rhs.a_ && b_ = rhs.b_ && c_ = rhs.c_ && d_ = rhs.d_;
   int a_;
   float b_;
   char c_;
   SomeOtherObj d_;

if(myClass1 == myClass2)
   // they are the same

Open in new window

ambuliAuthor Commented:
Thank you evilrix.  I did not think about that.
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Featured Post

Get expert help—faster!

Need expert help—fast? Use the Help Bell for personalized assistance getting answers to your important questions.

Tackle projects and never again get stuck behind a technical roadblock.
Join Now