Objects and Classes Questions

Practice Objects and Classes MCQs with answers and explanations. Page 3 of 3.

Category
C++ Programming
Topic
Objects and Classes
Page
3 / 3
Mode
Practice

Questions

Open any question to view the answer and explanation.

C++ deleting this inside a member: what happens if Function() calls delete this and then the pointer is used again? #include<iostream.h> class CuriousTab { int x; float y; public: void Function() { x = 4; y = 2.50; delete this; } void Display() { cout<< x << " " << y; } }; int main() { CuriousTab *pCuriousTab = new CuriousTab(); pCuriousTab->Function(); pCuriousTab->Function(); pCuriousTab->Display(); return 0; }
Open
View answer
C++ string scan: count characters immediately following spaces in "Welcome to CuriousTab.com!" and return the count length. #include<iostream.h> #include<string.h> class CuriousTab { char str[50]; char tmp[50]; public: CuriousTab(char s) { strcpy(str, s); } int CuriousTabFunction() { int i = 0, j = 0; while ((str + i)) { if (*(str + i++) == ' ') *(tmp + j++) = *(str + i); } *(tmp + j) = 0; return strlen(tmp); } }; int main() { char txt[] = "Welcome to CuriousTab.com!"; CuriousTab objCuriousTab(txt); cout << objCuriousTab.CuriousTabFunction(); return 0; }
Open
View answer
C++ composition with explicit member initialization: what product does Show() print for objBase(yy, yy)? #include<iostream.h> class CuriousTabBase { int x, y; public: CuriousTabBase(int xx = 10, int yy = 10) { x = xx; y = yy; } void Show() { cout<< x * y << endl; } }; class CuriousTabDerived : public CuriousTabBase { private: CuriousTabBase objBase; public: CuriousTabDerived(int xx, int yy) : CuriousTabBase(xx, yy), objBase(yy, yy) { objBase.Show(); } }; int main() { CuriousTabDerived objDev(10, 20); return 0; }
Open
View answer
C++ non-virtual method call through a base pointer: which class name is printed when the static type is A*? #include<iostream.h> class A { public: void CuriousTabFunction(void) { cout<< "Class A" << endl; } }; class B: public A { public: void CuriousTabFunction(void) { cout<< "Class B" << endl; } }; class C : public B { public: void CuriousTabFunction(void) { cout<< "Class C" << endl; } }; int main() { A *ptr; B objB; ptr = &objB; ptr = new C(); ptr->CuriousTabFunction(); return 0; }
Open
View answer

Practice smarter

Solve a few questions daily and revisit weak topics regularly to improve accuracy.