53.
What will be the output of the following C++ code?
#include <iostream>
#include <algorithm>
#include <vector>
#include <functional>
using namespace std;
int op_increase (int i)
{
    return ++i;
}
int main ()
{
    vector<int> a;
    vector<int> b;
    for (int i = 1; i < 4; i++)
    a.push_back (i * 10);
    b.resize(a.size());
    transform (a.begin(), a.end(), b.begin(), op_increase);
    transform (a.begin(), a.end(), b.begin(), a.begin(), plus<int>());
    for (vector<int> :: iterator it = a.begin(); it != a.end(); ++it)
        cout << ' ' << *it;
    return 0;
}

55.
What will be the output of the following C++ code?
#include <iostream>
using namespace std;
struct A 
{
    virtual void f()  
    { 
        cout << "Class A" << endl; 
    }
};
struct B : A 
{
    virtual void f() 
    { 
        cout << "Class B" << endl;
    }
};
struct C : A 
{
    virtual void f() 
    {
        cout << "Class C" << endl; 
    }
};
void f(A* arg) 
{
    B* bp = dynamic_cast<B*>(arg);
    C* cp = dynamic_cast<C*>(arg);
    if (bp)
        bp -> f();
    else if (cp)
        cp -> f();
    else
        arg -> f();  
};
int main() 
{
    A aobj;
    C cobj;
    A* ap = &cobj;
    A* ap2 = &aobj;
    f(ap);
    f(ap2);
}

57.
What will be the output of the following C++ code?
#include <iostream>
using namespace std;
class Base
{
    public:
    int m;
    Base(int n=0)
    : m(n)
    {
        cout << "Base" << endl;
    }
};
class Derived: public Base
{
    public:
    double d;
    Derived(double de = 0.0)
    : d(de)
    {
        cout << "Derived" << endl;
    }
};
int main()
{
    cout << "Instantiating Base" << endl;
    Base cBase;
    cout << "Instantiating Derived" << endl;
    Derived cDerived;
    return 0;
}

59.
What is the use of is_heap_until() function?

60.
Which of the following is correct about bitset and vector of bools?