logo

CuriousTab

CuriousTab

Discussion


Home C++ Programming Constructors and Destructors Comments

  • Question
  • 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(float ff)
        {
            cout<< "Float" << 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 Float .
  • D. The program will print the output Final .
  • E. None of the above

  • Correct Answer
  • The program will print the output Int


  • Constructors and Destructors problems


    Search Results


    • 1. 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
    • 2. 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
    • 3. 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
    • 4. 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
    • 5. 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
    • 6. What will be the out of the following program?
      #include<iostream.h> 
      class CuriousTabBase
      {
          public:
          int x, y; 
          public:
          CuriousTabBase(int xx = 0, int yy = 0)
          {
              x = xx;
              y = yy; 
          } 
       };
      class CuriousTabDerived : public CuriousTabBase
      {
          private:
              CuriousTabBase objBase; 
          public:
          CuriousTabDerived(int xx, int yy) : CuriousTabBase(xx), objBase(yy)
          {
              cout << x          << " " 
                   << this->x    << " "  
                   << CuriousTabBase::x << " "     
                   << this->objBase.x ;
          } 
          ~CuriousTabDerived()
          { }
      };
      int main()
      {
          CuriousTabDerived objDev(11, 22); 
          return 0;
      }

    • Options
    • A. 11 22 0 0
    • B. 11 11 0 22
    • C. 11 11 11 0
    • D. 11 11 11 22
    • E. 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 CuriousTab
      {
          int x; 
          public:
              CuriousTab()
              {
                 x = 0;
              }
              CuriousTab(int xx)
              {
                  x = xx; 
              }
              CuriousTab(CuriousTab &objB)
              {
                  x = objB.x; 
              }
              void Display()
              {
                  cout<< x << " ";
              }
      };
      int main()
      {
          CuriousTab objA(25);
          CuriousTab objB(objA);
          CuriousTab objC = objA;
          objA.Display();
          objB.Display();
          objC.Display();
          return 0; 
      }

    • Options
    • A. The program will print the output 25 25 25 .
    • B. The program will print the output 25 Garbage 25 .
    • C. The program will print the output Garbage 25 25 .
    • D. The program will report compile time error.
    • Discuss
    • 8. What will be the output of the following program?
      #include<iostream.h> 
      class CuriousTab
      {
          int x, y; 
          public:
          CuriousTab(int xx)
          {
              x = ++xx;
          } 
          ~CuriousTab()
          {
              cout<< x - 1 << " ";
          }
          void Display()
          {
              cout<< --x + 1 << " ";
          } 
      };
      int main()
      {
          CuriousTab objCuriousTab(5);
          objCuriousTab.Display();
          int *p = (int*) &objCuriousTab;
          *p = 40;
          objCuriousTab.Display();
          return 0; 
      }

    • Options
    • A. 6 6 4
    • B. 6 6 5
    • C. 5 40 38
    • D. 6 40 38
    • E. 6 40 39
    • Discuss
    • 9. What will be the output of the following program?
      #include<iostream.h>
      class CuriousTabBase
      {   
          public:
          CuriousTabBase()
          {
              cout<< "Base OK. "; 
          }
          virtual ~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
    • 10. Which of the following statement is correct about the program given below?
      #include<iostream.h> 
      class CuriousTab
      {
          int x, y; 
          public:
              CuriousTab()
              {
                  x = 0;
                  y = 0; 
              }
              CuriousTab(int xx, int yy)
              {
                  x = xx;
                  y = yy; 
              }
              CuriousTab(CuriousTab *objB)
              {
                  x = objB->x;
                  y = objB->y; 
              }
              void Display()
              {
                  cout<< x << " " << y;
              }
      };
      int main()
      {
          CuriousTab objCuriousTab( new CuriousTab(20, 40) );
          objCuriousTab.Display();
          return 0; 
      }

    • Options
    • A. The program will print the output 0 0 .
    • B. The program will print the output 20 40 .
    • C. The program will print the output Garbage Garbage .
    • D. The program will report compile time error.
    • Discuss


    Comments

    There are no comments.

Enter a new Comment