Quizzes
Site Language: English
Українська
English
Русский
Programming Tests
Login
Sign Up
Programming Tests
Theory
Snippets
Papers
Landing
Android
Prices
FAQ
Cosmo Story
Terms and Conditions
Privacy Policy
Cookies Policy
Send Feedback
pointers
:
Content language: Русский
English
Что выведет в консоль следующий код: #include <iostream> using namespace std; class A{ public: int foo(){ return 1; } }; class B: public A{ public: virtual int foo(){ return 2; } }; class C: public B{ public: int foo(){ return 3; } }; int main() { A* obj = new C; cout << obj->foo(); cout << ((B*)obj)->foo(); cout << ((C*)obj)->foo(); return 0; }
pointers
Что напечатает следующий код: #include <iostream> using namespace std; class B { public: virtual void msg () { cout << "classB"; } }; class D : public B { public: virtual void msg() { cout << "classD"; } }; int main() { B * var = new D; var->msg(); // .... return 0; }
pointers
Что выведет на экран данный код? #include <iostream> using namespace std; class A { public: int a=3; }; class B:public A { public: B(){str="Day";} ~B(){delete [] str;} char *str; }; int main(void) { A *lol=new A; cout<<lol->a; B* iop=(B *)lol; cout<<iop->str; return 0; }
pointers
Что выведет следующий код: #include <iostream> using namespace std; class Base { public: void method(){}; }; class Child : public Base { public: void method() { cout << "Child"; }; }; int main() { Base* base = new Child(); base->method(); return 0; }
pointers
Как можно вызвать метод следующего класса: class Child { public: void Count() { } }; Выберите все подходящие варианты.
pointers
Какой вывод у данной программы? #include <iostream> class A { public: A() { std::cout << "A()"; } void memget() { std::cout << sizeof(*this); } virtual void f() { std::cout << "f()"; } virtual void f2() { std::cout << "f2()"; } virtual ~A() { std::cout << "~A()"; } }; struct VPTR { void (*function0)(void); void (*function1)(void); void (*function2)(void); }; int main() { A* ob = new A; VPTR** vPtr = reinterpret_cast<VPTR**>(ob); (*vPtr)->function0(); ob->memget(); delete ob; return 0; }
pointers
В каких строках кода произойдут ошибки компиляции? class B { virtual void f() {} }; class V { virtual void g() {} }; class X { }; class D : public B, virtual public V, virtual public X { }; int main() { D d; B* pb = &d; D* p1 = (D*)pb; // 1 D* p2 = dynamic_cast<D*>(pb); // 2 V* pv = &d; D* p3 = (D*)pv; // 3 D* p4 = dynamic_cast<D*>(pv); // 4 X* px = &d; D* p5 = (D*)px; // 5 D* p6 = dynamic_cast<D*>(px); // 6 return 0; }
pointers
Что выведется в консоль при выполнении данной программы? #include <iostream> using namespace std; class a { public: static int s; a(){++s; cout<<s;} ~a(){--s;cout<<s;} }; int a::s; class b:public a { public: b():a(){++s;cout<<s;} ~b(){--s;cout<<s;} }; int main() { a *one = new b; delete one; cin.get(); }
pointers
Для чего предназначена указанная заготовка класса А? сlass A { A * nA; A * pA; Data d; public: void setN(A * p) { nA = p; } void setP(A * p) { pA = p; } //другой код ~A() { nA->setP(pA); pA->setN(nA); //другой код } };
pointers
Какие преобразования между базовым и производным классом для ссылок и указателей разрешены без явного приведения типа в случае открытого наследования?
pointers
← Prev
7
8
9
10
11
Next →
Sign Up Now
or
Subscribe for future quizzes