Вопрос 1
Введение в объектно-ориентированное программирование.ои(dor)_211115
Введение в объектно-ориентированное программирование.ои(dor)_211115
Просмотрите все вопросы и варианты бесплатно. Правильные ответы скрыты и открываются только после получения доступа.
Содержание теста
Вопросы и варианты
Без отметок и подсказок к правильным ответам
Быстрый поиск
Показано 90 вопросов
Найдите вопрос внутри теста
Ищем по тексту вопросов и вариантов ответа на этой странице.
По вашему запросу ничего не найденоПопробуйте сократить фразу или проверить написание.
Вопрос 2
В определении класса члены класса с ключевым словом private доступны:
Вопрос 3
Методу класса всегда доступны данные:
Вопрос 4
Шаблон для создания объектов, обеспечивающий начальные значения состояний: инициализация полей-переменных и реализация поведения функций или методов – это …
Вопрос 5
Структурированная переменная, содержащая всю информацию о некотором физическом предмете или реализуемом в программе понятии – это …
Вопрос 6
Метод программирования, идея которого была основана на представление программы, как совокупность объектов – это…
Вопрос 7
Установите соответствие между терминами и определениями:
Вопрос 8
Установите соответствие между открытиями и их создателями:
Вопрос 9
Установите соответствия между языками и видами программирования.
Вопрос 10
Проставьте открытия в программировании в исторической последовательности:
Вопрос 11
Проставьте создание языков программирования в исторической последовательности (от старого до нового):
Вопрос 12
Проставьте историческую последовательность: как после появления объектно-ориентированного программирования развивалось это направление:
Вопрос 13
Предсказать результат следующей программы:
Вопрос 14
Представлен код программы. Какой результат выполнения?
Вопрос 15
Перед Вами код. Опишите его работу.
Вопрос 16
Специальная функция класса, которая вызывается при создании нового объекта этого класса и предоставляет возможность инициализировать объекты во время их создания и гарантировать, что все данные члены будут иметь корректные значения это …
Вопрос 17
Специальный метод без параметров, имя которого состоит из символа ~ и имени класса это …
Вопрос 18
Конструктор копирования должен иметь в качестве параметра ссылку, потому что …
Вопрос 19
Конструкторы подчиняются тем же правилам относительно типов параметров, что и …
Вопрос 20
При выполнении операции присваивания между существующими объектами одного типа вызывается …
Вопрос 21
Варианты использования (кроме всего прочего) нужны для:
Вопрос 22
При описании нового объекта с инициализацией другим объектом этого же типа вызывается …
Вопрос 23
Установите последовательность создания конструктора:
Вопрос 24
Если есть два класса, один из которых базовый, а другой - унаследованный от базового, то последовательность вызовов следующая:
Вопрос 25
Конструктор — это особый тип метода класса, который автоматически вызывается при создании объекта этого же класса. Деструктор — это специальный тип метода класса, который выполняется при удалении объекта класса. В то время, как конструкторы предназначены для инициализации класса, деструкторы предназначены для очистки памяти после него. Т.о., опишите код программы:
Вопрос 26
Предсказать результат следующей программы:
Вопрос 27
Перед Вами код. Опишите его результат.
Вопрос 28
Обычно, компилятор автоматически создает конструктор копирования для каждого класса, но в некоторых случаях, программист создает конструктор копирования, называемый:
Вопрос 29
Специальный конструктор в языке программирования C++, и в некоторых других языках программирования, применяемый для создания нового объекта, как копии уже существующего:
Вопрос 30
Конструктор копирования должен иметь в качестве параметра ссылку, потому что …
Вопрос 31
Правило трёх (также известное как «Закон Большой Тройки» или «Большая Тройка») - это правило в C++, гласящее, что если класс или структура определяет один из следующих методов, то они должны явным образом определить все три метода:
Вопрос 32
Особый вид оператора присваивания, используемый для присваивания объектов одного класса друг другу …
Вопрос 33
Операторы присваивания хранят значение в объекте, указанном левым операндом. Существует два вида операций присваивания:
Вопрос 34
Установите соответствие между операторами и их значениями:
Вопрос 35
Установите соответствие между операторами и их значениями
Вопрос 36
Установите соответствие между операторами и их значениями
Вопрос 37
Проставьте последовательность алгоритма процесса присваивания
Вопрос 38
Посмотрите код и напишите алгоритм его создания:
Вопрос 39
Посмотрите код и напишите алгоритм его создания
Вопрос 40
Описать работу кода программы:
Вопрос 41
Описать работу кода программы:
Вопрос 42
Операция присваивания копированием – это особый вид операции присваивания, используемый для присваивания объектов одного класса друг другу. Является одним из особых членов-функций и генерируется автоматически компилятором в случае, если нет явного объявления программистом. Код, сгенерированный компилятором и выполняет побитовое копирование. Операция присваивания копированием отличается от конструктора копирования тем, что должна очищать члены-данные цели присваивания (и правильно обрабатывать самоприсваивание), тогда как конструктор копирования присваивает значения неинициализированным членам-данным. Опишите работу кода программы:
Вопрос 43
Предположим, что класс Derv является частным производным класса Base. Мы определяем объект класса Derv, расположенный в функции main(). Через него мы можем получить доступ к:
Вопрос 44
Иерархия классов …
Вопрос 45
Использование виртуальных функций для полиморфной обработки родственных объектов относят к:
Вопрос 46
Процесс создания новых классов, называемых наследниками или производными классами, из уже существующих или базовых классов– это …
Вопрос 47
Роль наследования в объектно-ориентированном программировании заключается в:
Вопрос 48
Синтаксис наследования выглядит так:
Вопрос 49
Основное преимущество наследования – это возможность повторного использования кода. Укажите последовательность выполнения представленного кода:
Вопрос 50
Укажите последовательность написания кода:
Вопрос 51
Как решить вопрос о том, какой из спецификаторов использовать при наследовании? В большинстве случаев, производный класс представляет собой улучшенную или более специализированную версию базового класса. В случае, когда объект производного класса предоставляет доступ как к общим методам базового класса, так и к более специализированным методам своего класса, имеет смысл воспользоваться общим наследованием. Проставьте последовательность создания кода простого наследования:
Вопрос 52
Ключевыми элементами методологии объектно-ориентированного проектирования, связанного с наследованием относят: 1) выбор надлежащей совокупности типов; 2) проектирование взаимосвязей между типами и применение наследования для использования общего кода; 3) использование виртуальных функций для полиморфной обработки родственных объектов. Опишите код программы, содержащую наследование:
Вопрос 53
Важный момент при наследовании - это перегруженные функции - методы класса-потомка. Если в классе-родителе и в его классах-потомках встречаются методы с одинаковым именем, то для объектов класса-потомка, компилятор будет использовать методы именно класса-потомка. Перегруженные методы класса-потомка, могут вызывать методы класса-родителя. В таком случае, важно помнить, что необходимо правильно определить область действия с помощью оператора «::». Иначе, компилятор воспримет это, как вызов функцией самой себя. Наглядно, если бы мы перегрузили в классе функцию - это выглядело бы так. Опишите, что указывает данная запись кода:
Вопрос 54
Роль наследования в ООП такая же, как у функций в процедурном языке программирования, т.е. сократить размер кода и упростить связи между элементами программы. В определенных ситуациях могут появиться некоторые проблемы, связанные со множественным наследованием. Рассмотрим наиболее общую проблему. Допустим, что в обоих базовых классах существуют методы с одинаковыми именами, а в производном классе метода с таким именем нет. Рассмотрим пример. Как в этом случае объект производного класса определит, какой из методов базовых классов выбрать?
Вопрос 55
ключевое слово virtual используется …
Вопрос 56
Когда используется таблица виртуальных функций?
Вопрос 57
Что реализуется через механизмы перегрузки (функций и операций), виртуальные функции и шаблоны?
Вопрос 58
Определение функции, в которой типу обрабатываемых данных присвоено условное обозначение - это...
Вопрос 59
Указателем базового класса можно воспользоваться для …
Вопрос 60
Множественное наследование – это наследование, при котором создание производного класса основывается на …
Вопрос 61
Опишите процесс выполнения конструкторов при порождении из нескольких классов поэтапно.
Вопрос 62
Если существует два класса, один базовый, другой унаследованный от базового, то при необходимости вызова, последовательность будет следующая:
Вопрос 63
Проставьте последовательность процесса написания представленного кода:
Вопрос 64
Перегрузка методов это механизм, который позволяет создавать несколько методов с одним и тем же именем. В результате создается иллюзия, что можно вызывать метод с разными аргументами. Перед Вами код перегрузки функции. Выберите правильное описание работы кода.
Вопрос 65
При множественном наследовании может сложиться ситуация, когда один и тот же базовый класс наследуется (через разные цепочки наследования) в производном классе несколько раз. Обычно, в этом ничего хорошего нет, т.к. нередко такие ситуации приводят к ошибкам. С другой стороны, совсем избежать подобных ситуаций бывает проблематично. Выход состоит в том, чтобы при создании цепочки наследования, использовать виртуальные базовые классы. Перед Вами код. Выберите, какой будет результат кода.
Вопрос 66
Виртуальные методы – это один из важнейших приёмов реализации полиморфизма. Они позволяют создавать общий код, который может работать как с объектами базового класса, так и с объектами любого его класса-наследника. При этом, базовый класс определяет способ работы с объектами, и любые его наследники могут предоставлять конкретную реализацию этого способа. Общий шаблон объявления чисто виртуального метода следующий:
Вопрос 67
Классы, предназначенные для хранения данных, организованных определенным образом:
Вопрос 68
Набор согласованных обобщённых алгоритмов, контейнеров, средств доступа к их содержимому и различных вспомогательных функций в C++
Вопрос 69
Сущности, использующиеся для получения доступа к отдельным данным в контейнере.
Вопрос 70
Контейнеры бывают …
Вопрос 71
Последовательные контейнеры …
Вопрос 72
Все контейнерные классы предоставляют …
Вопрос 73
Проставьте порядок выполнения кода поэтапно.
Вопрос 74
Проставьте последовательность функций классов-контейнеров в языке C++
Вопрос 75
Пример работы с контейнером приведен ниже. В файле находится произвольное количество целых чисел. Программа считывает их в вектор и выводит на экран. Опишите последовательность кода:
Вопрос 76
Векторы — это умные массивы. Они занимаются автоматическим размещением себя в памяти, расширением и сужением своего размера по мере вставки или удаления данных. Векторы можно использовать в какой-то мере как массивы, обращаясь к элементам, с помощью привычного оператора []. Случайный доступ выполняется очень быстро в векторах. Также, довольно быстро осуществляется добавление (или проталкиваниновых данных в конец вектора. Когда это происходит, размер вектора автоматически увеличивается для того, чтобы было куда разместить новое значение. Рассмотрим код программы. Выберете, что демонстрирует данный пример.
Вопрос 77
Стек – это динамическая структура сохранения данных, которая работает по принципу «последний пришел — первый вышел» (Last-In First-Out). В стеке добавление новых элементов и удаление существующих элементов производится с одного конца, который называется вершиной стека. Организация данных с помощью стека эффективна, когда нужно реализовать: обмен данными между методами приложения с помощью параметров; синтаксический анализ разнообразных выражений. Рассмотрим пример. Выберете, что будет результатом программы:
Вопрос 78
Для работы с очередью вам понадобится знать функции: push(), pop(), front(), back(), empty(). 1) Для добавления в очередь нового элемента нужно воспользоваться функцией — push(). В круглых скобках должно находится значение, которое мы хотим добавить. 2) Если нам понадобилось удалить первый элемент нужно оперировать функцией pop(). В круглых скобках уже ничего не нужно указывать, но по правилам, они должны присутствовать! Эти функции не нуждаются в указании аргумента: empty(), back() и front(). 3) Если вам понадобилось обратиться к первому элементу очереди, то вам понадобится функция front(). 4) Чтобы обратиться к последнему элементу в очереди, вам поможет функция back(). 5) Чтобы узнать, пуста ли очередь, нужно воспользоваться функцией empty(). Если ваша очередь пуста — возвратит true. Если в ней что-то есть — возвратит false. В коде (нижмы использовали все выше перечисленные методы. Выберете, что будет результатом программы:
Вопрос 79
Механизм языков программирования, предназначенный для описания реакции программы на ошибки времени выполнения и другие возможные проблемы (исключения), которые могут возникнуть при выполнении программы, и приводят к невозможности дальнейшей отработки программой её базового алгоритма – это:
Вопрос 80
Особый вид оператора, используемый для присваивания объектов одного класса друг другу – это…
Вопрос 81
Реакция на исключительное обстоятельство, которое возникает во время работы программы - это …
Вопрос 82
В C ++ функция может указывать исключения, которые она генерирует, с помощью ключевого слова:
Вопрос 83
Исключительные ситуации, возникающие при работе программы, можно разделить на два основных типа:
Вопрос 84
Классическим примером исключительной ситуации в С++ является:
Вопрос 85
Проставьте последовательность работы конструкций исключительных ситуации:
Вопрос 86
Обработка исключений, возбужденных оператором throw, идет по следующей схеме:
Вопрос 87
Проставьте последовательность стандартных исключений в иерархии родительско-дочерних классов.
Вопрос 88
Мы рассмотрим ситуацию создания динамического массива. В программе для обработки исключительных ситуаций создадим динамический массив. Единственная особенность программы в том, что размер создаваемого массива определяется пользователем уже в процессе выполнения программы: при запуске программы, появляется сообщение с просьбой ввести целое число, число считывается, и в соответствии со считанным значением создается динамический массив. Рассмотрим программный код. Каким будет результат, если после выполнения программы ввести отрицательное число.
Вопрос 89
В представленной программе используются throw, try и catch вместе. Результат выполнения программы следующий: We caught an int exception with value -1. Continuing our way! Опишите как работают блоки.
Вопрос 90