Тесты
Язык сайта: Русский
Українська
English
Русский
Тесты по программированию
Вход
Регистрация
Тесты по программированию
Теория
сниппеты
Статьи
Главная
Android
Цены
FAQ
История Cosmo
Правила и условия сервиса
Политика конфиденциальности
Политика в отношении файлов cookie
Обратная Связь
class
:
Язык контента: Русский
English
Дан код. Сколько раз будет вызван деструктор ~A()? #include <stdexcept> class A { public: ~A(){ } }; class B { A *a; public: B() { try { a = new A[100]; throw std::logic_error("oups"); } catch(...){ throw; } } ~B(){ delete [] a;} }; int main() { try { B b; A a[10]; A *a2 = new A(); delete a2; } catch(...) { } return 0; }
class
Сколько памяти занимает объект пустого класса?
class
Какие методы компилятор может автоматически сгенерировать для данного класса?class A { };
class
При данном определении класса, какой вывод будет у этой программы? #include <iostream> class A {}; template<class T> class B { int i; public: int func(B<A>& c) { c.i = 3; return c.i; } }; int main() { B<int> a; B<A> b, c; std::cout<<a.func(c)<<b.func(c); }
class
Что выведет программа? #include <iostream> #include <exception> using namespace std; class a { public: virtual void f(int) { cout<<"a int"; } virtual void f(char*) { cout<<"a char*"; } }; class b : public a { public: virtual void f(char*) { cout<<"b char*"; } }; int main (void) { b* o = new b; o->f(0); return 0; }
class
Имея следующую иерархию классов, что будет выведено на экран при выполнении следующего кода? #include <iostream> using namespace std; class Agregated{ public: Agregated(){ cout<<"Agregated construct"<<endl; } ~Agregated(){ cout<<"Agregated destruct"<<endl; } }; class Base{ protected: Agregated * ptr; public: Base():ptr(NULL){ cout<<"Base construct"<<endl; f(); } virtual ~Base()=0; virtual void f()=0; }; Base::~Base(){ if(ptr) delete ptr; cout<<"Base destruct"<<endl; } void Base::f(){ cout<<"Base f"<<endl; } class Derived: public Base{ public: Derived(){ if(!ptr) ptr = new Agregated; cout<<"Derived construct"<<endl; } ~Derived(){ cout<<"Derived destruct"<<endl; } void f(){} }; int main(){ Base* b = new Derived(); delete b; cin.get(); return 0; }
class
Что произойдет после, если попытаться скомпилировать этот код? template<class T> class Object { public: Object(std::string& name, const T& value):nameVal(name), objectVal(value){}; ~Object(); private: std::string& nameVal; const T objectVal; }; std::string new("Good"); std::string old("Bad"); Object<int> p(new, 2); Object<int> s(old, 20); p = s;
class
Выберите правильные утверждения для следующего кода struct A { virtual void Foo() = 0; }; struct B : A { void Foo() { /*code*/ } };
class
Что будет напечатано в результате работы программы? #include <iostream> class A { private: virtual void VirtualMethod() { std::cout << "A::VirtualMethod()"; } public: void TestMethod() { VirtualMethod(); } virtual ~A() {} }; class B : public A { private: void VirtualMethod() { std::cout << "B::VirtualMethod()"; } public: ~B() {} }; int main() { A* a = new B(); a->TestMethod(); delete a; return 0; }
class
Скомпилируется ли следующий код? template <class T> struct A { template <class K> A(K a) { } };
class
← Предыдущая
3
4
5
6
7
Следующая →
Зарегистрируйся сейчас
или
Подпишись на будущие тесты