Overloading == stack overflow exception

I'm trying to overload the == and != operators.

 public static bool operator ==(VeryLargeInt value1, VeryLargeInt value2)
        {
            if ((value1 == null) || (value2 == null))
            {
                throw new ArgumentNullException();
            }
            return value1.Equals(value2);
        }

        public static bool operator !=(VeryLargeInt value1, VeryLargeInt value2)
        {
            return !(value1 == value2);
        }

But the code above generates a unhandled exception of 'System.StackOverflowException'. How do I remedy this?
igor92128Asked:
Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

 
gregoryyoungCommented:
your overload is on VeryLargeInt I take it?

It just calls == itself ... when it calls == this just calls back into itself again (infinite recursion). should it be doing some other comparison here (like actually doing a comparison? or maybe calling .Equals?).
0

Experts Exchange Solution brought to you by ConnectWise

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
 
Guy Hengel [angelIII / a3]Billing EngineerCommented:
just make the == like this:

 public static bool operator ==(VeryLargeInt value1, VeryLargeInt value2)
        {
            return value1.Equals(value2);
        }

 if eiter value is null, that will raise an error anyhow...
0
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.

All Courses

From novice to tech pro — start learning today.