Here is a listing of C++ language interview questions on “Overloaded Function Names” along with answers, explanations and/or solutions:
1. Which of the following permits function overloading on c++?
a) type
b) number of arguments
c) type & number of arguments
d) number of objects
Answer: c
Clarification: Both type and number of arguments permits function overloading in C++, like
int func(int);
float func(float, float)
Here both type and number of arguments are different.
2. In which of the following we cannot overload the function?
a) return function
b) caller
c) called function
d) main function
Answer: a
Clarification: While overloading the return function, it will rise a error, So we can’t overload the return function.
3. Function overloading is also similar to which of the following?
a) operator overloading
b) constructor overloading
c) destructor overloading
d) function overloading
Answer: b
Clarification: In constructor overloading, we will be using the same options availed in function overloading.
4. What will be the output of the following C++ code?
-
#include
-
using namespace std;
-
void print(int i)
-
{
-
cout << i;
-
}
-
void print(double f)
-
{
-
cout << f;
-
}
-
int main(void)
-
{
-
print(5);
-
print(500.263);
-
return 0;
-
}
a) 5500.263
b) 500.2635
c) 500.263
d) 500.266
Answer: a
Clarification: In this program, we are printing the values and the values will be print(5) will be printed first because of the order of the execution.
Output:
$ g++ over.cpp $ a.out 5500.263
5. What will be the output of the following C++ code?
-
#include
-
using namespace std;
-
int Add(int X, int Y, int Z)
-
{
-
return X + Y;
-
}
-
double Add(double X, double Y, double Z)
-
{
-
return X + Y;
-
}
-
int main()
-
{
-
cout << Add(5, 6);
-
cout << Add(5.5, 6.6);
-
return 0;
-
}
a) 11 12.1
b) 12.1 11
c) 11 12
d) compile time error
Answer: d
Clarification: As one can observe that no function has declaration similar to that of called Add(int, int) and Add(double, double) functions. Therefore, error occurs.
6. What will be the output of the following C++ code?
-
#include
-
using namespace std;
-
int operate (int a, int b)
-
{
-
return (a * b);
-
}
-
float operate (float a, float b)
-
{
-
return (a / b);
-
}
-
int main()
-
{
-
int x = 5, y = 2;
-
float n = 5.0, m = 2.0;
-
cout << operate(x, y) <<"t";
-
cout << operate (n, m);
-
return 0;
-
}
a) 10.0 5.0
b) 5.0 2.5
c) 10.0 5
d) 10 2.5
Answer: d
Clarification: In this program, we are divide and multiply the values.
Output:
$ g++ over3.cpp $ a.out 10 2.5