Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ООП - Екзаменаційні питання new2.doc
Скачиваний:
0
Добавлен:
01.03.2025
Размер:
190.98 Кб
Скачать

4. Практичне завдання.

  1. Охарактеризуйте основні підходи до перевизначення оператору інкремента «++» та декремента «= =».

  2. Основні особливості обробки виняткових ситуацій: системні засоби обробки винятків.

  3. Вкажіть правильну відповідь:

3.1. Визначення класу це –

а) оголошення всіх його методів і полів;

б) визначення всіх його методів;

в) ініціалізація всіх його полів і виклик конструктора.

3.2. Зіставте:

1. Конструктор -

2. Деструкція -

3. Дружня функція -

4. Перевизначення операцій -

A - викликається автоматично, як тільки об'єкт класу знищується;

B - має доступ до захищених і власних компонентів класу, не будучи його компонентом;

C - можливість поширення дії стандартних операцій на операнди, для яких ці операції спочатку в мові не передбачалися;

D - використовується для ініціалізації об'єктів класу;

==========================================================

а) 1-D, 2-A, 3-B, 4-C;

б) 1-B, 2-A, 3-D, 4-C;

в) 1-C, 2-B, 3-A, 4-D.

3.3. Яке з наступних оголошень є оголошенням незмінного покажчика?

а) int const * ptr;

б) const int * ptr;

в) int * ptr const;

г) int * const ptr.

3.4. Що означає запис for (; ;)?

а) нескінченний цикл;

б) цикл, який не виконується жодного разу;

в) помилка компіляції;

г) аварійний вихід з програми.

4. Практичне завдання.

  1. Охарактеризуйте основні підходи до перевизначення операторів «>>» та «<<».

  2. Основні особливості обробки виняткових ситуацій: використання функцій exit() і abort() для завершення роботи коду програми.

  3. Вкажіть правильну відповідь:

3.1. Для того щоб виконати читання з файлу з довільної позиції, треба використовувати об'єкт класу:

а) strstream;

б) ofstream;

в) istream;

г) ifstream;

д) filestream.

3.2. У яких рядках помилка?

new long [];

new long [] [2] [4];

new long [3] [] [4];

==========================================================

а) у всіх рядках помилка - невідомий розмір;

б) в рядках немає помилки;

в) в першому рядку помилка - невідомий розмір;

г) у всіх рядках помилка - неправильний синтаксис.

3.3. Який вираз э коректним з точки зору доцільності використання динамічного розподілу пам'яті?

а)char * c = new char [5]; c = "aabb";

б)char * c = "aabb";

в)char c; c = new string ("aabb").

3.4. Який буде результат виконання программного коду?

int f (int & x) {

static int a = 0; if (!a) a = + + x; return a;}

int y = 6; f (y); cout << f (y) << y;

==========================================================

а) 77;

б) 78;

в) 70;

г) 79.

4. Практичне завдання.

  1. Дайте розширену характеристику процесам успадкування у класах із наведенням відповідних прикладів.

  2. Основні особливості організації С++-системи введення-виведення потокової інформації.

  3. Вкажіть правильну відповідь:

3.1. Яка перевага використання ключового слова const замість директиви # define?

а) константу, визначену за допомогою const, можна змінювати під час роботи;

б) до константи, визначеної за допомогою const, можна застосувати операції інкремента і декремента;

в) константа, визначена за допомогою const, доступна в інших модулях програми

г) константа, визначена за допомогою const, має тип, і компілятор може простежити за її використанням у відповідності з оголошеним типом.

3.2. Відзначте правильний варіант звільнення всієї пам'яті, виділеної для тривимірного масиву для наступної програми

long (* lp) [2] [4];

lp = new long [3] [2] [4];

==========================================================

а) delete [] lp;

б) delete lp;

в) delete [] [] lp;

г) delete [] [] [] lp.

3.3. Яким може бути аргумент деструктора?

а) адреса об'єкта;

б) покажчик this;

в) аргументу не може бути;

г) знищуваний об'єкт.

3.4. Який правильний заголовок шаблону?

а) template;

б) teаmplate;

в) tаmplate;

г) template $.