Задачи на ДИАГРАММАМЫ КЛАССОВ для экзамена




Вопросы по дисциплине ПКШ, выносимые на экзамен.

 

1. Поясните понятие концепции программирования. Модули и декомпозиция.

2. Раскройте понятие концепции ПОП, модули ПОП, пространство процессов, преимущества и недостатки ПОП.

3. Раскройте понятие концепции ООП, модули ООП, пространство объектов, преимущества и недостатки ООП.

4. Проведите сравнение концепций программирования ООП и ПОП.

5. Дайте определение понятия программа, оператор и описатель.

6. Дайте определение понятия указателя и ссылки. Примеры.

7. Что делается с помощью операции именования и разыменования? Приведите примеры.

8. Какую функцию выполняет операция new, delete? Приведите примеры.

9. Дайте определение понятия функция. Что такое прототип функции? Что такое описание функции и вызов функции? Приведите пример.

10. Что такое формальные параметры и фактические параметры функции? Поясните на примере.

11. Назначение блок-схем. Основные элементы блок-схем.

12. Дайте определение понятия цикл. Какие составляющие циклов вы знаете. Обозначение цикла на блок-схеме. Пример.

13. Дайте определение понятия файл. Какие основные операции и описание для работы с файлами вы знаете? Виды доступа к файлам. Пример.

14. Что такое манипуляторы как элементы программы? Перечислите известные вам манипуляторы для потоков ввода и вывода. Приведите пример.

15. Что такое проект в системе программирования (СП)? Какие преимущества дает использование проектов в СП?

16. Для чего нужен отладчик в СП? Какие основные действия можно предпринять при отладке программ?

17. Дайте развернутое определение понятия класса. Заголовок класса. Какие разновидности членов класса вы знаете? Приведите пример. Чем различаются классы и структуры данных?

18. Что такое конструктор и деструктор, для чего они нужны? Приведите примеры.

19. Что такое инкапсуляция? Какие режимы инкапсуляции в классах вы знаете? Понятия интерфейса и реализации. Пример.

20. Дайте определение понятия наследования. Что такое базовые классы? Что такое производный класс? Приведите пример.

21. Диаграммы классов и объектов. Их составляющие. Примеры.

22. Какие изменения в порожденном классе модно сделать при наследовании? Примеры.

23. Какие типы наследования Вы знаете? Диаграммы классов.

24. Что такое множественное наследование? Приведите пример и диаграмму классов.

25. Что такое перегруженная операция в классе? Понятие и пример.

26. Что такое объявление класса и для чего оно используется? Приведите пример.

27. Дайте определение понятия макрокоманды (макроса). Приведите пример.

28. Что такое статическое и динамическое связывание? Этапы связывания и примеры.

29. Как описывается шаблон функции? Приведите пример использования шаблона функции.

30. Дайте определение понятия шаблона класса. Как описывается шаблон класса? Приведите пример использования шаблона класса.

31. В чем состоят преимущества использования шаблонов функций и шаблонов классов?

32. Поясните понятие перегрузки функций? Какой тип связывания используется при перегрузке функций? Пример.

33. Поясните понятие параметров функций по умолчанию? Где могут задаваться параметры по-умолчанию? Пример.

34. Поясните понятие перегрузки операций? Пример.

35. Какие виды перегрузки операций Вы знаете? Пример.

36. В чем особенность внешней перегрузки и внутренней перегрузки?

37. Каково назначение перегрузки функций с точки зрения программиста?

38. Каково назначение перегрузки операций с точки зрения программиста?

39. Что такое абстрактный класс. Почему нельзя создавать объекты абстрактных классов? Пример.

40. Что такое виртуальная функция (ВФ)? Чистая ВФ? Пример.

41. Что такое виртуальный вызов? Дайте точное определение. В чем преимущества виртуального вызова для программистов?

42. Что такое виртуальный класс? Пример и назначение.

43. Что такое виртуальный деструктор? Для чего он используется. Пример.

44. Что такое виртуальный класс? Пример.

45. Какая проблема решается при использовании виртуальных классов?

46. Как влияет использование виртуального вызова на изменяемость, наглядность и размер программ?

47. Что такое контейнерный класс и элементный класс? Какие разновидности контейнеров вы знаете?

48. Какие операции выполняются с контейнерами? Приведите примеры контейнеров.

49. Какие библиотечные контейнерные классы Вы знаете?

50. Что такое массив? Какие операции с массивами вы знаете?

51. В чем заключаются недостатки стандартных массивов С++? Как их можно преодолеть?

52. Что такое статический массив и динамический массив?

53. Что такое итераторы и для чего они используется?

54. Что такое список, какие особенности использования списков? Пример с рисунком.

55. Какие операции для работы со списками вы знаете? Перечислите. Пример.

56. Проведите сравнение массивов и списков. Поясните области применения списков и массивов.

57. Документ ТЗ, назначение, разработчик, стиль изложения, его пользователи.

58. Документы ТО и ОП, назначение, разработчик, стиль изложения, его пользователи.

59. Документ ПМИ, назначение, разработчик, стиль изложения, его пользователи.

60. Документы РП и РСП, назначение, разработчик, стиль изложения, его пользователи

 


 

Задачи на ДИАГРАММАМЫКЛАССОВ для экзамена

Задача 1. По скелетной структуре классов постройте диаграмму классов (стрелка указывает от друга к классу и от вложенного класса к основному):

class A; // объявление класса

class F {… friend A;};

class B {…};

class C {…};

class A: B, C{

class D

{ … }; };

class E: A, F

{…

friend G;

class H

{ … }; }

 

 
 

(Ответ Задача 1:)

 

 

 
 

Задача 2 По диаграмме классов опишите скелетную структуру классов

 

(Ответ Задача 2:)

 

class R {…};

class Q {…};

class V {…};

class P {…

friend R; };

class T {… friend V; };

class U: Q, P{ …

class S

{ … };

};

class W: U,T

{…};

 

Задача 3 По скелетной структуре классов постройте диаграмму классов

 

class X {…};

class R {…};

class W {… class Q {…}; };

class V {… friend R;};

class U: X { …

friend V;

…};

class Y: W, U

{… class Z{ … };

};

 

 
 

(Ответ Задача 1:)

 

Задача 4

 
 

По диаграмме классов опишите скелетную структуру классов

 

(Ответ Задача 4:)

class G {…};

class A {…

class B { … }; …

};

class D {…};

class C: A { … };

class E: D, C

{…

friend F;

class H {…};…

}

class F: G { … };

 

 



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2017-06-30 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: