logo

CuriousTab

CuriousTab

Constructors and Destructors problems


  • 1. Which of the following statement is correct about the program given below?
    #include<iostream.h> 
    class CuriousTab
    {
        public:
        CuriousTab()
        {
            cout<< "Curious";
        }
        ~CuriousTab()
        {
            cout<< "Tab";
        }
    };
    int main()
    {
        CuriousTab objTab;
        return 0; 
    }

  • Options
  • A. The program will print the output Curious.
  • B. The program will print the output Tab.
  • C. The program will print the output CuriousTab.
  • D. The program will report compile time error.
  • Discuss
  • 2. What will be the output of the following program?
    #include<iostream.h>
    class CuriousTabBase
    {   
        public:
        CuriousTabBase()
        {
            cout<< "Base OK. "; 
        }
        ~CuriousTabBase()
        {
            cout<< "Base DEL. "; 
        }
    };
    class CuriousTabDerived: public CuriousTabBase
    {
        public:
        CuriousTabDerived()
        { 
            cout<< "Derived OK. "; 
        }
        ~CuriousTabDerived()
        { 
            cout<< "Derived DEL. "; 
        }
    };
    int main()
    {
        CuriousTabBase *basePtr = new CuriousTabDerived();
        delete basePtr;
        return 0;
    }

  • Options
  • A. Base OK. Derived OK.
  • B. Base OK. Derived OK. Base DEL.
  • C. Base OK. Derived OK. Derived DEL.
  • D. Base OK. Derived OK. Derived DEL. Base DEL.
  • E. Base OK. Derived OK. Base DEL. Derived DEL.
  • Discuss
  • 3. What will be the output of the following program?
    #include<iostream.h> 
    class CuriousTab
    {
        int x; 
        public:
        CuriousTab(int xx, float yy)
        {
            cout<< char(yy);
        } 
    }; 
    int main()
    {
        CuriousTab *p = new CuriousTab(35, 99.50f);
        return 0; 
    }

  • Options
  • A. 99
  • B. ASCII value of 99
  • C. Garbage value
  • D. 99.50
  • Discuss
  • 4. What will be the output of the following program?
    #include<iostream.h> 
    int val = 0; 
    class CuriousTab
    {
        public: 
        CuriousTab()
        {
            cout<< ++val;
        }
        ~CuriousTab()
        {
            cout<< val--; 
        } 
    }; 
    int main()
    {
        CuriousTab objCuriousTab1, objCuriousTab2, objCuriousTab3;
        {
            CuriousTab objCuriousTab4;
        } 
        return 0;
    }

  • Options
  • A. 1234
  • B. 4321
  • C. 12344321
  • D. 12341234
  • E. 43211234
  • Discuss
  • 5. Which of the following statement is correct about the program given below?
    #include<iostream.h> 
    class CuriousTab
    {
        int x; 
        public:
        CuriousTab(short ss)
        {
            cout<< "Short" << endl;
        }
        CuriousTab(int xx)
        {
            cout<< "Int" << endl;
        }
        CuriousTab(char ch)
        {
            cout<< "Char" << endl;
        }
        ~CuriousTab() 
        {
            cout<< "Final";
        }
    };
    int main()
    {
        CuriousTab *ptr = new CuriousTab('B');
        return 0; 
    }

  • Options
  • A. The program will print the output Short .
  • B. The program will print the output Int .
  • C. The program will print the output Char .
  • D. The program will print the output Final .
  • E. None of the above
  • Discuss
  • 6. Which of the following statement is correct about the program given below?
    #include<iostream.h> 
    class CuriousTab
    {
        int *p; 
        public:
        CuriousTab(int xx, char ch)
        {
            p  = new int(); 
            *p = xx + int(ch); 
            cout<< *p;
        }
        ~CuriousTab() 
        {
            delete p;
        }
    };
    int main()
    {
        CuriousTab objCuriousTab(10, 'B'); 
        return 0;
    }

  • Options
  • A. The program will print the output 76.
  • B. The program will print the output 108.
  • C. The program will print the output garbage value.
  • D. The program will report compile time error.
  • Discuss
  • 7. Which of the following statement is correct about the program given below?
    #include<iostream.h> 
    class Tab
    {
          int x; 
        public:
          Tab();
          void Show() const;
          ~Tab(){}
    };
    Tab::Tab()
    {
        x = 5;
    }
    void Tab::Show() const
    {
        cout<< x;
    }
    int main()
    {
        Tab objB;
        objB.Show();
        return 0; 
    }

  • Options
  • A. The program will print the output 5.
  • B. The program will print the output Garbage-value.
  • C. The program will report compile time error.
  • D. The program will report runtime error.
  • Discuss
  • 8. What will be the output of the following program?
    #include<iostream.h>
    class CuriousTabBase
    {   
        public:
        CuriousTabBase()
        {
            cout<< "Base OK. "; 
        }
    };
    class CuriousTabDerived: public CuriousTabBase
    {
        public:
        CuriousTabDerived()
        { 
            cout<< "Derived OK. "; 
        }
        ~CuriousTabDerived()
        { 
            cout<< "Derived DEL. "; 
        }
    };
    int main()
    {
        CuriousTabBase    objB;
        CuriousTabDerived objD;
        objD.~CuriousTabDerived();
        return 0;
    }

  • Options
  • A. Base OK. Derived OK. Derived DEL.
  • B. Base OK. Base OK. Derived OK. Derived DEL.
  • C. Base OK. Derived OK. Derived DEL. Derived DEL.
  • D. Base OK. Base OK. Derived OK. Derived DEL. Derived DEL.
  • E. The program will report compile time error.
  • Discuss
  • 9. What will be the output of the following program?
    #include<iostream.h> 
    class CuriousTabBase
    {
        public:
        int x, y;
        CuriousTabBase(int xx = 0, int yy = 5)
        {
            x = ++xx; 
            y = --yy;
        }
        void Display()
        {
            cout<< --y;
        } 
        ~CuriousTabBase(){} 
    };
    class CuriousTabDerived : public CuriousTabBase
    {
        public:
        void Increment()
        {
            y++;
        }
        void Display()
        {
            cout<< --y;
        } 
    }; 
    int main()
    {
        CuriousTabDerived objCuriousTab;
        objCuriousTab.Increment();
        objCuriousTab.Display();
        return 0; 
    }

  • Options
  • A. 3
  • B. 4
  • C. 5
  • D. Garbage-value
  • E. The program will report compile time error.
  • Discuss
  • 10. Which of the following statement is correct about the program given below?
    #include<iostream.h> 
    class Tab
    {
          int x; 
        public:
          Tab();
         ~Tab();
          void Show() const;
    };
    Tab::Tab()
    {
        x = 25;
    }
    void Tab::Show() const
    {
        cout<< x;
    }
    int main()
    {
        Tab objB;
        objB.Show();
        return 0; 
    }

  • Options
  • A. The program will print the output 25.
  • B. The program will print the output Garbage-value.
  • C. The program will report compile time error.
  • D. The program will report runtime error.
  • Discuss

First 2 3 4 5 6