Difference between Operator overloading and Functional
overloading?

Answer Posted / swetcha

Function overloading is like you have different functions
with the same name but different signatures working
differently. So, the compiler can differentiate and find
out which function to call depending on the context. In
case of operator overloading, you try to create your own
functions which are called when the corresponding operator
is invoked for the operands.

One important thing to understand is that you can create as
many functions as you want with the same name and sifferent
signatures so that they can work diffrently but for a
particular class, you cannot overload the operator function
based on number of arguments. There is a fundamental reason
behind this.

According to the rules, you can not create your own
operators but you have to use already available operators.
Another thing is since the operator are already defined for
use with buily-in types you can not change their
charecteristics. For example the binary operator '+' always
takes two parameters, so for this you cannot create a
function that takes three parameters. But you can always
overload them based on the type of the parameters.

Is This Answer Correct ?    115 Yes 14 No



Post New Answer       View All Answers


Please Help Members By Posting Answers For Below Questions

What are guid? Why does com need guids?

566


If you hear the cpu fan is running and the monitor power is still on, but you did not see anything show up in the monitor screen. What would you do to find out what is going wrong?

544


Explain the auto storage classes in c++.

597


Which should be more useful: the protected and public virtuals?

595


Define a nested class.

611






What are the data types in c++?

513


What is an adaptor class or wrapper class in c++?

602


Explain what you mean by a pointer.

621


How do you traverse a btree in backward in-order?

616


What is c++ coding?

651


What are the different types of comments allowed in c++?

572


Can you please explain the difference between static and dynamic binding of functions?

565


What is class syntax c++?

590


How do c++ struct differs from the c++ class?

588


How can you say that a template is better than a base class?

580