Examveda

What will be the output of the following C++ code?
#include <iostream>
using namespace std;
class sample
{
    public:
    sample(int i) : m_i(i) { }
    public:
    int operator()(int i = 0) const 
    { 
        return m_i + i; 
    }
    operator int () const   
    { 
        return m_i; 
    }
    private:
    int m_i;
    friend int g(const sample&);
};
int f(char c)
{
    return c;
}
int main()
{
    sample f(2);
    cout << f(2);
    return 0;
}

A. 3

B. 4

C. 5

D. 6

Answer: Option B


Join The Discussion

Related Questions on Classes and Objects in C plus plus