Examveda

What will be the output of the following C++ code?
#include <iostream>
using namespace std;
class poly
{
    protected:
    int width, height;
    public:
    void set_values(int a, int b)
    {
        width = a; height = b;
    }
};
class Coutput
{
    public:
    void output(int i);
};
void Coutput::output(int i)
{
    cout << i;
}
class rect:public poly, public Coutput
{
    public:
    int area()
    {
        return(width * height);
    }
};
class tri:public poly, public Coutput
{
    public:
    int area()
    {
        return(width * height / 2);
    }
};
int main()
{
    rect rect;
    tri trgl;
    rect.set_values(3, 4);
    trgl.set_values(4, 5);
    rect.output(rect.area());
    trgl.output(trgl.area());
    return 0;
}

A. 1212

B. 1210

C. 1010

D. 1250

Answer: Option B


Join The Discussion

Related Questions on C plus plus miscellaneous

What is the difference between '++i' and 'i++' in C++?

A. None of the above

B. They both have the same effect

C. '++i' increments the value of 'i' before returning it, while 'i++' increments the value of 'i' after returning it

D. '++i' increments the value of 'i' after returning it, while 'i++' increments the value of 'i' before returning it