Тесты
Язык сайта: Русский
Українська
English
Русский
Тесты по программированию
Вход
Регистрация
Тесты по программированию
Теория
сниппеты
Статьи
Главная
Android
Цены
FAQ
История Cosmo
Правила и условия сервиса
Политика конфиденциальности
Политика в отношении файлов cookie
Обратная Связь
inheritance
:
Язык контента: Русский
English
В каких строках кода произойдут ошибки компиляции? 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; }
inheritance
Что будет выведено на экран (в какой последовательности будут вызваны деструкторы)? #include <iostream> using namespace std; class A { public: A () {} ~A() { cout << "~A";} }; class B : public A { public: B () {} ~B () { cout << "~B"; } }; int main () { A *b = new B (); delete b; return 0; }
inheritance
Что выведется в консоль при выполнении данной программы? #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(); }
inheritance
Что выведет данная программа? #include <iostream> class base { public: base() { std::cout << "base()"; } virtual ~base() { std::cout << "~base()"; } void f() { std::cout << "base f()"; } }; class derived: public base { public: derived() { std::cout << "derived()"; } ~derived() { std::cout << "~derived()"; } void f() { std::cout << "derived f()"; } }; int main() { base* ob = new derived; dynamic_cast<derived*>(ob)->f(); return 0; }
inheritance
Какой режим наследования использован ? struct B { /*...*/ }; struct A: B { /*...*/ };
inheritance
Что выведет код: #include <iostream> using namespace std; class D { public: D () { cout << "D"; } virtual ~D () { cout << "~D"; } }; class A : public D{ public: A () { cout << "A";} ~A() { cout << "~A";} }; class C : public D{ public: C () { cout << "C";} virtual ~C () { cout << "~C";} }; class B : public A, C { public: B () {cout << "B";} ~B () { cout << "~B"; } }; int main () { A *b = new B (); delete b; return 0; }
inheritance
Что выведет следующий код при создании экземпляра класса D? struct A { A() { cout << "A"; } }; struct B : virtual A { B() { cout << "B"; } }; struct C : virtual A { C() { cout << "C"; } }; struct D : B, C { D() { cout << "D"; } };
inheritance
Какие преобразования между базовым и производным классом для ссылок и указателей разрешены без явного приведения типа в случае открытого наследования?
inheritance
Что напечатает следующий код при создании экземпляра класса X: #include <iostream> using namespace std; class Y { public: Y() { cout << "Y"; } }; class Z { public: Z() { cout << "Z"; } }; class X : public Z { private: Y m_objY; public: X() { cout << "X"; } };
inheritance
Какой результат выполнения следующей программы? #include <iostream> using namespace std; class A { public: A() {} ~A() {} void f(){cout<<"A::f();"<<endl;} }; class B: virtual public A { public: B() {} ~B() {} void f(){cout<<"B::f();"<<endl;} }; int main(){ A * a = new B(); B * b = dynamic_cast<B *>(a); b->f(); delete a; }
inheritance
← Предыдущая
7
8
9
10
11
Следующая →
Зарегистрируйся сейчас
или
Подпишись на будущие тесты