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
constructors
:
Content language: Русский
English
Что напечатает следующий код: #include <iostream> using namespace std; class A { private: A() { cout << "A"; } }; int main(int argc, char* argv[]) { A a, b; return 0; }
constructors
Какой будет вывод следующей программы? #include <iostream> class A { public: A(int n = 2) : m_i(n) { } ~A() { std::cout << m_i; } protected: int m_i; }; class B : public A { public: B(int n) : m_a1(m_i + 1), m_a2(n) { } public: ~B() { std::cout << m_i; --m_i; } private: A m_a1; A m_a2; }; int main() { { B b(5); } std::cout << std::endl; return 0; }
constructors
Что произойдет при компиляции и выполнении кода? #include <iostream> using namespace std; class A { public: A() { f("A()"); } ~A() { f("~A()"); } protected: virtual void f(const char* str) = 0; }; class B : public A { public: B() { f("B()"); } ~B() { f("~B()"); } protected: void f(const char* str) { cout<< str << endl; } }; int main() { B b; return 0; }
constructors
Что будет выведено на экран (в какой последовательности будут вызваны деструкторы)? #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; }
constructors
Что выведется в консоль при выполнении данной программы? #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(); }
constructors
Что выведет данная программа? #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; }
constructors
Что выведет код: #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; }
constructors
Что выведет следующий код при создании экземпляра класса 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"; } };
constructors
Что напечатает следующий код при создании экземпляра класса 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"; } };
constructors
Дан следующий код: class A { }; class B : public A { }; class C : public B { }; class D : public C { }; void method(B* b) { } void method(C* c) { } int main() { ... return 0; } Какие фрагменты кода, вставленные вместо многоточия в методе main, не приведут к ошибке компиляции?
constructors
← Prev
3
4
5
6
7
Next →
Sign Up Now
or
Subscribe for future quizzes