adplus-dvertising

Welcome to the Derived Classes,Templates and Exception Handling in C++ MCQs Page

Dive deep into the fascinating world of Derived Classes,Templates and Exception Handling in C++ with our comprehensive set of Multiple-Choice Questions (MCQs). This page is dedicated to exploring the fundamental concepts and intricacies of Derived Classes,Templates and Exception Handling in C++, a crucial aspect of Object Oriented Programming Using C++. In this section, you will encounter a diverse range of MCQs that cover various aspects of Derived Classes,Templates and Exception Handling in C++, from the basic principles to advanced topics. Each question is thoughtfully crafted to challenge your knowledge and deepen your understanding of this critical subcategory within Object Oriented Programming Using C++.

frame-decoration

Check out the MCQs below to embark on an enriching journey through Derived Classes,Templates and Exception Handling in C++. Test your knowledge, expand your horizons, and solidify your grasp on this vital area of Object Oriented Programming Using C++.

Note: Each MCQ comes with multiple answer choices. Select the most appropriate option and test your understanding of Derived Classes,Templates and Exception Handling in C++. You can click on an option to test your knowledge before viewing the solution for a MCQ. Happy learning!

Derived Classes,Templates and Exception Handling in C++ MCQs | Page 16 of 24

Q151.
What is the output of this program?
    #include <iostream>
    #include <exception>
    using namespace std;
    void terminator()
    {
        cout << "terminate" << endl;
    }
    void (*old_terminate)() = set_terminate(terminator);
    class Botch 
    {
        public:
        class Fruit {};
        void f() 
        {
            cout << "one" << endl;
            throw Fruit();
        }
        ~Botch() 
        {
            throw 'c'; 
        }
    };
    int main() 
    {
        try 
        {
            Botch b;
            b.f();
        } 
        catch(...) 
        {
            cout << "inside catch(...)" << endl;
        }
    }
Discuss
Answer: (d).one terminate Aborted
Q152.
What is the output of this program?
    #include <iostream>
    #include <exception>
    #include <cstdlib>
    using namespace std;
    void myterminate () 
    {
        cerr << "terminate handler called";
        abort();
    }
    int main (void) 
    {
        set_terminate (myterminate);
        throw 0; 
        return 0;
    }
Discuss
Answer: (c).both terminate handler & Aborted
Q153.
What is the output of this program?
    #include <iostream>
    using namespace std;
    class Test1 
    { 
    };
    class Test2 : public Test1 { };
    void Funct();
    int main()
    {
        try
        {
            Funct();
        }
        catch (const Test1&)
        {
            cerr << "Caught a exception" << endl;
        }
        return 0;
    }
    void Funct()
    {
        throw Test2();
    }
Discuss
Answer: (a).Caught an exception
Q154.
What is the output of this program?
    #include <iostream>
    using namespace std;
    #include <cstdlib>
    #include <exception>
    void Funct()
    {
        cout << "Funct() was called by terminate()." << endl;
        exit(0);
    }
    int main()
    {
        try
        {
            set_terminate(Funct);
            throw "Out of memory!";
        }
        catch(int)
        { 
            cout << "Integer exception raised." << endl; 
        }
        return 0;
    }
Discuss
Answer: (b).Funct() was called by terminate()
Q155.
What function will be called when we have a uncaught exception?
Discuss
Answer: (c).terminate
Q156.
What will not be called when the terminate() is arised in constructor?
Discuss
Answer: (c).destructor
Q157.
What will happen when we move try block far away from catch block?
Discuss
Answer: (a).Reduces the amount of code in cache
Q158.
What will happen if an excpetion that is thrown may causes a whole load of objects to go out of scope?
Discuss
Answer: (c).It will be added to the overhead
Q159.
What operation can be performed by destructor?
Discuss
Answer: (b).Resource cleanup
Q160.
What is the output of this program?
    #include <iostream>
    #include <exception>
    using namespace std;
    int main () 
    {
        try
        {
            double* i= new double[1000];
            cout << "Memory allocated";
        }
        catch (exception& e)
        {
            cout << "Exception arised: " << e.what() << endl;
        }
        return 0;
    }
Discuss
Answer: (c).Depends on the computer memory

Suggested Topics

Are you eager to expand your knowledge beyond Object Oriented Programming Using C++? We've curated a selection of related categories that you might find intriguing.

Click on the categories below to discover a wealth of MCQs and enrich your understanding of Computer Science. Happy exploring!