1. Парадигмы программирования.
2. Императивное программирование (процедурное, структурное, ООП).
3. Декларативное программирование (функциональное, логическое).
4. Типы данных, приведение типа, переполнение типа.
5. Понятия:
- объявление,
- инициализация,
- присваивание.
6. Этапы подготовки исполняемой программы. Директивы препроцессора.
7. Ошибки, классификация ошибок.
8. Правила именования идентификаторов в языках программирования.
9. Префиксная и постфиксная формы записи инкремента и декремента.
10. Операторы ==, &, &&, |, ||, ^, !.
11. Операторы ввода и вывода.
12. Операторы управления:
- условные операторы,
- оператор выбора.
13. Операторы управления:
- циклы.
14. Инкапсуляция.
15. Функции:
- назначение функций,
- варианты размещения функции в программе.
16. Понятия прототипа функции, типа возвращаемого значения, команда return.
17. Аргументы функции (формальные и фактические параметры).
18. Порядок передачи управления в нескольких функциях.
19. Перегрузка функций, понятие сигнатуры функции.
20. Встроенные функции.
21. Рекурсия.
22. Назначение указателей. Управление памятью с помощью операций new и delete.
23. Передача аргументов в функцию по значению, передача указателей, передача по ссылке. Операторы sizeof, &, *.
24. Понятия:
- стек,
- переполнение стека,
- куча.
25. Классы, объекты, свойства, методы. Массив объектов.
26. Обращение к свойствам и методам класса. Статические свойства и методы.
27. Модификаторы доступа.
28. Оператор this. Оператор разрешения области видимости ::
29. Конструктор. Перегрузка конструктора. Конструктор с аргументами по умолчанию.
30. Деструктор.
31. Наследование.
32. Полиморфизм.
33. Множественное наследование.
34. Обработка исключений.
35. Геттеры и сеттеры.
36. Перегрузка операторов.
37. Операторы для работы с файлами.
38. Перечисления.
39. Пространства имен.
40. Шаблоны классов.
41. Односвязный список.
42. Вектор.