Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Питання до ДЕК.doc
Скачиваний:
19
Добавлен:
12.02.2016
Размер:
63.12 Кб
Скачать

1.1. Що поганого в автоматичному приведенні типів об’єктів?

  1. Якщо програміст застосовує приведення типів для того, щоб обійти закладений в С++ строгий контроль за типами даних, то це говорить про серйозні недоліки в структурі програми, які протирічать ідеології С++.

  2. Якщо програміст застосовує приведення типів, то це суттєво сповільнює виконання програми і потребує додаткової оптимізації по швидкості.

  3. Автоматичне приведення не є технологією С++, а тому компілятор повинен компілювати фрагмент коду, як код мови С.

  4. Автоматичне приведення є операціями пізнього зв’язування, що суттєво сповільнює виконання програми.

1.1. В чому різниця між шаблоном функції і макросом?

  1. Шаблони здійснюють перевірку типів.

  2. Макроси здійснюють перевірку типів.

  3. Між ними не існує жодної різниці.

  4. Параметри функції можуть мати аргументи по замовчуванні

  5. Параметри макросу не можуть мати аргументи по замовчуванні

1.1. Можливість виконання оператором або функцією різних дій залежно від типу операндів називається:

    1. інкапсуляцією;

    2. класифікацією;

    3. поліморфізмом;

    4. перевантаженням

    5. наслідуванням

1.1. Виклик методу об’єкту можливий через

  1. Вказівник на метод класу

  2. Вказівник на метод об’єкту

  3. Вказівник на глобальну функцію.

  4. Вказівник на метод структури

  5. Вказівник на метод об"єднання

1.1. Для яких користувачів доступні члени класи, які оголошені в секції protected?

  1. Для класу, похідного класу та для дружніх класів чи дружніх функцій.

  2. Для екземплярів класу, похідного класу та для дружніх класів чи дружніх функцій.

  3. Для класу, дружніх функцій та для екземплярів сторонніх класів.

  4. Для похідного класу

  5. Для дружніх функцій

1.1. Для яких користувачів доступні члени класи, які оголошені в секції protected?

  1. Для класу, похідного класу та для дружніх класів чи дружніх функцій.

  2. Для екземплярів класу, похідного класу та для дружніх класів чи дружніх функцій.

  3. Для класу, дружніх функцій та для екземплярів сторонніх класів.

  4. Для похідного класу

  5. Для дружніх функцій

1.1. Для чого потрібні вказівники, якщо із посиланнями легше працювати?

  1. Вказівники мають більші можливості стосовно доступу до членів класу.

  2. Посилання не можуть бути нульовими, і їх заборонено переозначувати.

  3. Вказівники потребують негайної ініціалізації при створенні

  4. Посилання не контролюються при передаванні в тіло функції.

1.1.Якими явно визначеними атрибутами повинен володіти клас для того, щоб його можна було використовувати зі стандартними контейнерами?

  1. Конструктор без параметрів.

  2. Конструктор без параметрівта копії.

  3. Конструктори без параметрів та копії і перевантажений оператор присвоєння.

  4. Конструктори з параметрами та копії і перевантажений оператор присвоєння.

  5. Конструктори з параметрами та копії і перевантажений оператор приведення.

1.1. Для чого використовувати шаблони, якщо можна використовувати макроси?

  1. Використання шаблонів прискорює виконання програми, а макросів - сповільнює.

  2. Шаблони прискорюють процес компіляції програми.

  3. Шаблони здійснюють перевірку типів.

  4. Макроси здійснюють перевірку типів.

1.1. Аргумент функції записується:

  1. у квадратних дужках

  2. у фігурних дужках

  3. у круглих дужках

  4. без дужок

1.1. В чому відмінність потоків С++ від функції printf()?

  1. Потоки не підтримують роботи з класами.

  2. Потоки не підтримують роботи з помилками консольного вводу/виводу.

  3. Функція не може прийняти змінної кількості параметрів.

  4. Функція не здійснює контроль за типом виведених даних

1.1. Для чого клас оголошується абстрактним?

  1. Створення чисто віртуальних функцій дає змогу уникнути несанкціонованого створення об’єктів даного класу.

  2. Для обох приведених випадків.

  3. Створення абстрактного класу дає змогу побудувати єдиний інтерфейс доступу через посилання на абстрактний клас

РІВЕНЬ 2

2.1.Який з вибраних варіантів ілюструє оголошення класу A та інтерфейсу В, при якому неможливим є наслідування А в подальшому? Чому?

class A

{

friend class CFinal;

private:

A() {}

};

//sample class

class CFinal:

private

virtual A

{

};

  1. class A

{

public:

A() =0 ;

};

// sample class

class CFinal : private virtual A

{

B(){}

};

protected class A

{

public:

A() {}

};

// sample class

class CFinal : A

{

};

class A

{

public:

A() =0 ;

};

// sample class

class CFinal : A

{

B(){}

};

class A

{

A();

public:

};

// sample class

class CFinal : private virtual A

{

B(){}

};