While defining operator’s functions in a class, why is the parameter passes as (Complex &obj)? I don’t think there is a need to do so.
Why &Obj in function parameter?
It is being passed by reference and it is needed.
You can check the reason for it here: https://stackoverflow.com/questions/2685854/why-should-the-copy-constructor-accept-its-parameter-by-reference-in-c