I'm curious about how some operators work (+, -) in terms of objects.
I've always wondered how EventHandlers work by adding a method:
Foo.Action += new FooActionHandler
If not an Event, what about returning a comparison?
DateTime - DateTime
That returns a TimeSpan object, and I'm a bit baffled as to how that's possible. I use these kinds of methods all the time but I've never understood the inner workings of them. How would I create my own class to do something like this?