Вопросы к экзамену первого семестра

Материал из SEWiki
Версия от 12:57, 27 декабря 2016; Linsky (обсуждение | вклад) (Новая страница: «Регламент: * 1 теоретический вопрос в билете, чтобы подтвердить оценку семестра * 1 практи…»)

(разн.) ← Предыдущая | Текущая версия (разн.) | Следующая → (разн.)
Перейти к: навигация, поиск

Регламент:

  • 1 теоретический вопрос в билете, чтобы подтвердить оценку семестра
  • 1 практическая задача на бумаге, чтобы поднять оценку на балл

Примеры из лекций:

01. Программа, состоящая из нескольких файлов.
- заголовочные файлы
- компиляция и линковка
- утилита make

02. Указатели, массивы, ссылки. Три вида памяти. Работа с кучей на C.
- применение указателей и ссылок
- арифметика указателей
- глобальная/статическая память, стек, куча
- malloc/calloc/realloc
- void*

03. Стуктуры. Cвязный список на C.
- неинтрузивная реализация
- интрузивная реализация
- typedef

04. Функции. Указатели на функции.
- как происходит вызов функции
- реализация сортировки
void sort(void* base, size_t num, size_t size, int (*compar)(const void*,const void*));

05. Обзор стандартной библиотеки C.
- string.h (memcpy, memcmp, strcpy, strcmp, strcat, strstr, strchr)
- stdlib.h (malloc/free, calloc, realloc, atoi, strtoll, srand/rand, qsort)

06. Ввод-вывод на C.
- FILE, fopen, fclose, r/w, t/b, буферизация
- stdin, stdout
- printf, scanf, fprintf, fscanf, sprintf, scanf
- fread, fwrite, fseek, ftell, fflush
- обработка ошибок, feof, ferror

07. Классы и объекты.
- зачем нужно ООП?
- инкапсуляция: private/public
- конструктор (overloading), деструктор
- инициализация

08. Работа с кучей на C++.
- new/delete
- cоздание объектов в куче
- конструктор копий
- оператор присваивания

09. Наследование и полиморфизм.
- protected
- virtual (overriding)
- таблица виртуальных функций
- статическое/динамическое связывание

10. Умные указатели.
- scoped_ptr
- auto_ptr
- shared_ptr

11. Перегрузка операторов.
- бинарные и унарные
- в классе/вне классе
- friend
- приведение типов

12. Ключевые слова extern, static, inline.
- extern у переменных
- static у переменных и функций
- static у полей и методов
- inline у функций

13. Разное
- Автотесты
- Декомпозиция программы (Model, View)
- Ключевые слова const, enum