What is the result of the following program's execution?

#include <iostream>
using namespace std;

void f(double) { cout<<"f1"<<endl; }

void f(const int ) { cout<<"f2"<<endl; }

void f( int & ) { cout<<"f3"<<endl; }

void main(void) { 
    int n = 1;
    double b = 2;
    f(n);
    f(b);
}
Explanation
Compilation error will occur because of an ambiguity. Functions can not be overloaded if description of their parameters differs only by presence of const modifier or reference usage.

Follow CodeGalaxy

Mobile Beta

Get it on Google Play
Send Feedback
Keep exploring
C++ quizzes
Cosmo
Sign Up Now
or Subscribe for future quizzes