Multiple Inheritance

1

What are the things are inherited from the base class?

A. Constructor and its destructor
B. Operator=() members
C. Friends
D. All of the mentioned

2

Which design patterns benefit from the multiple inheritance?

A. Adapter and observer pattern
B. Code pattern
C. Glue pattern
D. None of the mentioned

3

What is the output of this program?

1.
    #include 
2.
    using namespace std;
3.
    class Base1
4.
    {
5.
        protected:
6.
        int SampleDataOne;
7.
        public:
8.
        Base1()
9.
        {
10.
            SampleDataOne = 100;
11.
        }
12.
        ~Base1()
13.
        {
14.
        }
15.
        int SampleFunctOne()
16.
        {
17.
            return SampleDataOne;
18.
        }
19.
    };
20.
    class Base2
21.
    {
22.
        protected:
23.
        int SampleDataTwo;
24.
        public:
25.
        Base2()
26.
        {
27.
            SampleDataTwo = 200;
28.
        }
29.
        ~Base2()
30.
        {
31.
        }
32.
        int SampleFunctTwo()
33.
        {
34.
            return SampleDataTwo;
35.
        }
36.
    };
37.
    class Derived1 : public Base1, public Base2
38.
    {
39.
        int MyData;
40.
        public:
41.
        Derived1() 
42.
        {
43.
            MyData = 300;
44.
        }
45.
        ~Derived1()
46.
        {
47.
        }    
48.
        int MyFunct()
49.
        {
50.
            return (MyData + SampleDataOne + SampleDataTwo);
51.
        }
52.
    };
53.
    int main()
54.
    {
55.
        Base1 SampleObjOne;
56.
        Base2 SampleObjTwo;
57.
        Derived1 SampleObjThree;
58.
        cout << SampleObjThree.Base1 :: SampleFunctOne() << endl;
59.
        cout << SampleObjThree.Base2 :: SampleFunctTwo() << endl;
60.
        return 0;
61.
    }
A. 100
B. 200
C. Both a & b
D. None of the mentioned

4

What is the output of this program?

1.
    #include 
2.
    using namespace std;
3.
    struct a
4.
    {
5.
        int count;
6.
    };
7.
    struct b
8.
    {
9.
        int* value;
10.
    };
11.
    struct c : public a, public b
12.
    {
13.
    };
14.
    int main()
15.
    {
16.
        c* p = new c;
17.
        p->value = 0;
18.
        cout << "Inherited";
19.
        return 0;
20.
    }
A. Inherited
B. Error
C. Runtime error
D. None of the mentioned

5

What is the output of this program?

1.
    #include 
2.
    using namespace std;
3.
    class student
4.
    {
5.
        public:
6.
        int rno , m1 , m2 ;
7.
        void get()
8.
        {
9.
            rno = 15, m1 = 10, m2 = 10;
10.
        }
11.
    };
12.
    class sports
13.
    {
14.
        public:
15.
        int sm;
16.
        void getsm()
17.
        {
18.
            sm = 10;
19.
        }
20.
    };
21.
    class statement:public student,public sports
22.
    {
23.
        int tot,avg;
24.
        public:
25.
        void display()
26.
        {
27.
            tot = (m1 + m2 + sm);
28.
            avg = tot / 3;
29.
            cout << tot;
30.
            cout << avg;
31.
        }
32.
    };
33.
    int main()
34.
    {
35.
        statement obj;
36.
        obj.get();
37.
        obj.getsm();
38.
        obj.display();
39.
    }
A. 3100
B. 3010
C. 2010
D. 1010