Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Тестовые вопросы ООП.docx
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
76.74 Кб
Скачать

<question> В чем разница между прототипом функции и определением функции?

<variant>Прототип функции не объявляет список параметров и тип возвращаемых данных, а в определении задается ее выполнение. Символ точки с запятой завершает прототип функции, но не ее определение. Объявление может вклячать ключевое слово inline и установки значений параметров по умолчанию. В объявлении функции достаточно указать тип параметров, а определение должно содержать их имена.

<variant>Прототип функции объявляет список параметров и тип возвращаемых данных, а в определении задается ее выполнение. Символ точки с запятой завершает прототип функции, но не ее определение. Объявление может вклячать ключевое слово inline и установки значений параметров по умолчанию. В объявлении функции достаточно указать тип параметров, а определение должно содержать их имена.

<variant>Прототип функции объявляет список параметров и тип возвращаемых данных, а в определении задается ее выполнение. Символ точки с запятой завершает прототип функции, но не ее определение. Объявление может вклячать ключевое слово online и установки значений параметров по умолчанию. В объявлении функции достаточно указать тип параметров, а определение должно содержать их имена.

<variant>Прототип функции объявляет список параметров и тип возвращаемых данных, а в определении задается ее выполнение. Символ точки с запятой завершает прототип функции, но не ее определение. Объявление может вклячать ключевое слово default и установки значений параметров по умолчанию. В объявлении функции достаточно указать тип параметров, а определение должно содержать их имена.

<variant>Все ответы неправильны.

<question> Должны ли имена параметров, указанные в прототипе, в определении и вызове функции, соответствовать друг другу?

<variant>Нет. Все параметры идентифицируются позицией, а не по имени.

<variant>Нет. Все параметры не идентифицируются не по позицией, и не по имени.

<variant>Да. Все параметры идентифицируются по именам, а не позицией.

<variant>Все ответы неправильны.

<variant>Нет. В параметрах не обязательно указывать имена.

<question> Если функция не возращает значения, то как ее следует объявить?

<variant>Объявите ее как viod.

<variant>Объявите ее как float.

<variant>Объявите ее как int.

<variant>Никак.

<variant>Все ответы неправильны.

<question> Если возвращаемый тип не объявлен, то какой тип будет принят по умолчанию для возвращаемого значения?

<variant>Любая функция, для которой тип возвращаемого значения не объявлен явно, возвращает значение типа float?

<variant>Любая функция, для которой тип возвращаемого значения не объявлен явно, возвращает значение типа void?

<variant>Любая функция, для которой тип возвращаемого значения не объявлен явно, возвращает значение типа int?

<variant>Никакой тип не будет принят.

<variant>Все ответы неправильны.

<question> Что такое локальная переменная?

<variant>Это переменная, передаваемая или объявленная снаружи некоторого блока. функции. Она действует за пределами блока.

<variant>Это переменная, передаваемая, но не объявленная внутри некоторого блока.

<variant>Это переменная, передаваемая или объявленная внутри некоторого блока (обычно функции). Она действует только в пределах этого блока.

<variant>Все ответы неправильны.

<variant>Такой переменной не существует.

<question> Что такое перегрузка функции?

<variant>Это способность написать несколько функции с одним и тем же параметром, но с личным числом и именем.

<variant>Это способность написать несколько функции с одним и тем же числом, но с личным именем и типом параметров.

<variant>Все ответы неправильны.

<variant>Это способность написать несколько функции с одним и тем же именем, но с личным числом и типом параметров.

<variant>Все ответы правильны.

<question> Что такое полиморфизм?

<variant>Это возможность вызова одноименных методов для объектов одинаковых, взаимосвязанных типов с учетом различий в выполнении функции для одинаковых типов. В С++ полиморфизм реализуется путем создания производных классов и виртуальных функций.

<variant>Это возможность вызова одноименных методов для объектов разных, взаимосвязанных типов с учетом различий в выполнении функции для разных типов. В С++ полиморфизм реализуется путем создания производных классов и виртуальных функций.

<variant>Это возможность вызова разноименных методов для объектов разных, взаимосвязанных типов с учетом различий в выполнении функции для разных типов. В С++ полиморфизм реализуется путем создания производных классов и виртуальных функций.

<variant>Это возможность вызова параметров для объектов разных, взаимосвязанных типов с учетом различий в выполнении функции для разных типов. В С++ полиморфизм реализуется путем создания производных классов и виртуальных функций.

<variant>Все ответы не правильны.

<question> Что такое точечный оператор, и для чего он используется?

<variant>Точечный оператор представляет собой символ точки (.) и применяется для прямого обращения к членам класса.

<variant>Точечный оператор представляет собой символ запятой (,) и применяется для прямого обращения к членам класса.

<variant>Точечный оператор представляет собой символ точки (.) и применяется для произвольного обращения к членам класса.

<variant>Точечный оператор представляет собой символ точки (.) и применяется для прямого обращения к переменной-функции.

<variant>Все ответы не правильны.

<question> Объявление класса является его интерфейсом или реализацией?

<variant>Объявление класса является его реализацией, который сообщает клиентам класса, как с ним взаимодействовать. Интерфейс класса – это набор функций-членов, сохраняемых обычно в файле с расширением .срр.

<variant>Объявление класса является его интерфейсом, который сообщает клиентам класса, как с ним взаимодействовать. Реализация класса – это набор функций-членов, сохраняемых обычно в файле с расширением .hрр.

<variant>Объявление класса является его реализацией, который сообщает клиентам класса, как с ним взаимодействовать. Интерфейс класса – это набор функций-членов, сохраняемых обычно в файле с расширением .hрр.

<variant>Объявление класса является его интерфейсом, который сообщает клиентам класса, как с ним взаимодействовать. Реализация класса – это набор функций-членов, сохраняемых обычно в файле с расширением .срр.

<variant>Все ответы не правильны.

<question> Какова разница между открытыми (publi<variant>и закрытыми (privat<variant>данными членами?

<variant>К открытым данным-членам могут обращаться переменные-члены класса, а к закрытым могут получить доступ только функции-члена класса.

<variant>К открытым данным-членам могут обращаться функции-члена класса, а к закрытым могут получить доступ только клиенты класса.

<variant>Все ответы не правильны.

<variant>Все ответы правильны.

<variant>К открытым данным-членам могут обращаться клиенты класса, а к закрытым могут получить доступ только функции-члена класса.

<question> Могут ли функции-члена быть закрытыми?

<variant>Нет. Не могут.

<variant>Да. Как функции-члены, так и переменные-члены могут быть закрытыми.

<variant>Да. Как функции-члены, так и функции класса могут быть закрытыми.

<variant>Нет. Как функции-члены, так и переменные-члены не могут быть закрытыми.

<variant>Все ответы не правильны.

<question> Могут ли переменные члены быть открытыми?

<variant>Переменные-члены могут быть открытыми, но хорошим тоном программирования считается объявлять все переменные-члены закрытыми, доступ к ним обеспечивать с помощью закрытых методов.

<variant>Нет. Не могут.

<variant>Переменные-члены могут быть открытыми, если параметры позволяют, а доступ к ним обеспечивать с помощью закрытых методов.

<variant>Переменные-члены могут быть открытыми, но хорошим тоном программирования считается объявлять все переменные-члены закрытыми, а доступ к ним обеспечивать с помощью открытых методов.

<variant>Все ответы не правильны.

<question> Если объявить два объекта класса Cat, могут ли они иметь различные значения переменных-членов itsAge?

<variant>Нет. Объекты класса имеют общие переменные-члены.

<variant>Нет. Каждый объект класса не имеет собственные переменные-члены.

<variant>Да. Каждый объект класса имеет собственные переменные-члены.

<variant>Все ответы не правильны.

<variant>Нет. Каждый объект класса имеет общие переменные-члены.

<question> Нужно ли объявление класса завершать точкой с запятой? А определение методов класса?

<variant>Объявление класса не заканчивается точкой с запятой после закрывающей фигурной скобки, а определение функций-членов – да.

<variant>Все ответы не правильны.

<variant>Объявление класса заканчивается точкой с запятой после закрывающей обычной скобки, а определение функций-членов – нет.

<variant>Объявление класса заканчивается точкой с запятой после закрывающей фигурной скобки, определение функций-членов тоже.

<variant>Объявление класса заканчивается точкой с запятой после закрывающей фигурной скобки, а определение функций-членов – нет.

<question> Как выглядел бы заголовок функции-члена Fun() класса Cat, которая не принимает параметров и возвращает значение void?

<variant>Заголовок функции-члена Fun() класса Cat, которая не принимает параметров и возвращает значение типа void, должен иметь следующий вид:

void Cat::Fun()

<variant>Заголовок функции-члена Fun() класса Cat, которая не принимает параметров и возвращает значение типа void, должен иметь следующий вид:

void Cat<<Fun()

<variant>Заголовок функции-члена Fun() класса Cat, которая не принимает параметров и возвращает значение типа void, должен иметь следующий вид:

void Cat:;Fun()

<variant>Заголовок функции-члена Fun() класса Cat, которая не принимает параметров и возвращает значение типа void, должен иметь следующий вид:

void Cat::Fun{}

<variant>Заголовок функции-члена Fun() класса Cat, которая не принимает параметров и возвращает значение типа void, должен иметь следующий вид:

void Cat>>Fun()

<question> Какая функция вызывается для инициализации объекта?

<variant>Для инициализации объекта вызывается настройка.

<variant>Для инициализации объекта вызывается конструктор.

<variant>Для инициализации объекта вызывается форма.

<variant>Все ответы не правильны.

<variant>Никакая функция не вызывается.

<question> Что такое дружественная функция?

<variant>Функция, объявленная дружественной, обладает правом доступа к защищенным и закрытым членам данного класса.

<variant>Функция, объявленная дружественной, обладает правом доступа к не защищенным и закрытым членам данного класса.

<variant>Функция, объявленная дружественной, обладает правом доступа к защищенным и открытым членам данного класса.

<variant>Все ответы не правильны

<variant>Функция, объявленная дружественной, не обладает правом доступа к защищенным и закрытым членам данного класса.

<question> Что такое дружественный класс?

<variant>Все функции класса, объявленного дружественным, обладает правом доступа ко всем не защищенным и открытым членам данного класса.

<variant>Все функции класса, объявленного дружественным, не обладает правом доступа ко всем защищенным и закрытым членам данного класса.

<variant>Все функции класса, объявленного дружественным, обладает правом доступа ко всем не защищенным и закрытым членам данного класса

<variant>Все функции класса, объявленного дружественным, обладает правом доступа ко всем защищенным и закрытым членам данного класса.

<variant>Все ответы не правильны

<question> Если класс Dog (пес) объявлен как дружественный классу Boy (мальчик), то будет ли Boy дружественен Dog?

<variant>Нет, дружественные отношения не взаимны.

<variant>Да, дружественные отношения взаимны.

<variant>Да, если параметры разрешат.

<variant>Все ответы не правильны

<variant>Дружественные отношения возможны, если свойства позволяют.

<question> Если класс Dog дружественен Boy, а Terrier (терьер) происходит от Dog, то будет ли Terrier дружественен Boy?

<variant>Да, если параметры разрешат

<variant>а, дружественные отношения наследуются

<variant>Нет, дружественные отношения не наследуются

<variant>Дружественные отношения возможны, если свойства позволяют

<variant>Все ответы не правильны

<question> Если класс Dog дружественен Boy, а Boy дружественен Horse, можно ли считать Dog дружественным Horse?

<variant>Дружественные отношения возможны, если свойства позволяют

<variant>Да, дружественные отношения ассоциативны

<variant>Нет, дружественные отношения не ассоциативны

<variant>Да, если параметры разрешат

<variant>Все ответы не правильны

<question> Где необходимо размещать объявление дружественной функции?

<variant>В конце прграммы

<variant>В начале прграммы

<variant>Она должна содержаться в одной из эти разделов: public:, protected: или private:

<variant>В любом месте в объявлении класса. Не имеет значения в каком из разделов будет содержаться это объявление: public:, protected: или private:

<variant>Все ответы правильны

<question> Укажите правильное объявление класса Animal (животное), который содержит переменную-член, являющуюся объектом класса String.

<variant>class Animal:

{

String itsName;

};

<variant>class Animal

{

private

String itsName;

};

<variant>class Animal:

{

private:

String itsName;

}

<variant>class Animal:

{

private:

String itsName

}

<variant>class Animal

{

private:

String itsName;

};

<question> Могут ли статические переменные-члены быть закрытыми?

<variant>Все ответы не правильны

<variant>Статических переменных-членов не существует

<variant>Да. Поскольку они являются переменными-членами, то доступ к ним может контролироваться подобно доступу к любым другим переменным-членам. Если статическая переменная-член объявлена как закрытая, то доступ к ней можно получить только с помощью открытого статического метода класса.

<variant>Нет, не могут

<variant>Да, если параметры отвечают всем требованиям

<question> Объявите статическую переменную-член

<variant>static to ItsStatic;

<variant>static ItsStatic;

<variant>static intStatic;

<variant>static int to ItsStatic;

<variant>static int ItsStatic;

<question> Что такое «объектная декомпозиция»?

<variant>Процесс разбиения предметной области на части, соответствующие классам и объектам предметной области

<variant>Такое отношение между классами, когда один является частью другого

<variant>Реализация включений нескольких однотипных объектов в один агрегатный объект

<variant>Методология, при которой мир рассматривается как совокупность объектов, согласованно действующих для обеспечения требуемого поведения

<variant>Совокупность основополагающих принципов, лежащих в основе объектно-ориентированного проектирования

<question> Объявите указатель на функцию, принимающую параметр типа int и возвращающую значение типа long

<variant>long(* function)(int to ItsStatic);

<variant>long(* function)();

<variant>long( function)(int);

<variant>long(* function)(int);

<variant>long( function)*(int);

<question>Чем различаются : объявление класса от определения объекта?

<variant>Ничем, в принципе

<variant>Определение объекта резервирует память для объекта, а объявление класса - заявляет о существовании класса

<variant>Отличие определяется конкретной средой программирования

<variant>Объявления, также как и определение, заявляет о существовании класса и объекта

<variant>Определение объекта присваивает значение классу, объявленному в каком-либо пространстве имен

<question> Что такое виртуальный деструктор?

<variant>Все ответы не правильны

<variant>Это виртуальная база данных

<variant>Деструктор любого класса не может быть объявлен виртуальным. При удалении указателя на объект будет автоматически запущен процесс определения типа и вызова всех необходимых деструкторов, включая виртуальные базовых классов

<variant>Виртуальных деструкторов не существует

<variant>Деструктор любого класса может быть объявлен виртуальным. При удалении указателя на объект будет автоматически запущен процесс определения типа и вызова всех необходимых деструкторов, включая виртуальные деструкторы базовых классов.

<question> Какой смысл носит тип отношения между классами, изображаемый стрелкой , с полым треугольником на одном конце ?

<variant>Зависимость

<variant>Наследование

<variant>Ассоциация

<variant>Реализация

<variant>Агрегация

<question> Как создать виртуальный конструктор копий?

<variant>Создав в классе виртуальный параметр, вызывающий конструктор копий

<variant>Создав в классе виртуальный метод, вызывающий конструктор копий

<variant>Отправить запрос в виртуальный метод

<variant>Все ответы правильны

<variant>Все ответы не правильны

<question> Объявите виртуальную функцию, которая принимает одно целочисленное значение и возвращает void

<variant>virtual void SomeFunction(int);

<variant>virtual void SomeFunction int;

<variant>virtual void SomeProsedure(int);

<variant>virtual void SomeProsedure int;

<variant>virtual vod SomeProsedure(int);

<question> Для чего используется ключевое слово protected?

<variant>Ни для чего не используется

<variant>Все ответы не правильны

<variant>Защищенные члены (объявленные с ключевым словом protecte<variant>доступны для функций-членов производных объектов и недоступны объектам посторонних классов

<variant>Используется для вызова операторов

<variant>Защищенные члены (объявленные с ключевым словом protecte<variant>недоступны для функций-членов производных объектов и доступны объектам посторонних классов

<question> Какой из элементов массива SomeArray[25] будет первым, а какой – последним?

<variant>) SomeArray[1], SomeArray[23]

<variant>SomeArray[1], SomeArray[25]

<variant>SomeArray[0], SomeArray[25]

<variant>SomeArray[0], SomeArray[24]

<variant>SomeArray[1], SomeArray[24]

<question> Как объявить многомерный массив?

<variant>Не возможно объявить многомерный массив

<variant>Запишите общий набор индексов для каждого измерения. Например, массив SomeArray[2][3][2] является трехмерным. Первое измерение содержит два элемента, второе–три, а третье-два.

<variant>Хватит одной записи отделного набора индекса для одного измерения

<variant>Запишите отдельный набор индексов для каждого измерения. Например, массив SomeArray[2][3][2] является трехмерным. Первое измерение содержит два элемента, второе–три, а третье-два.

<variant>Все ответы не правильны

<question> Инициализируйте члены массива SomeArray [2][3][2]

<variant>SomeArray[2][3][2]={

{ {1,2}, {3,4}, {5,6},

{ {7,8}, {9,10}, {11,12} };

<variant>SomeArray[2][3][2]={

{ {1,2,3}, {4,5,6}, {5,6},

{ {7,8}, {9,10}, {11,12} };

<variant>SomeArray[2][3][2]={

{ {1,2}, {3,4}, {5,6},

{ {7,8}, {9,10} };

<variant>SomeArray[2][3][2]={

{ {1,2}, {3,4}, {5,6},

{ {7,8}, {11,12} };

<variant>SomeArray[2][3][2]={

{ {1,2}, {5,6},

{ {7,8}, {9,10}, {11,12} };

<question> Открытые методы класса – это функции - члены класса, предназначенные для манипулирования закрытыми переменными – членами класса. Зачем же нужен такой дополнительный уровень косвенного доступа?

<variant>Чтобы скрыть от пользователя подробности хранения данных в объектах

<variant>Чтобы проще и легче использовать данные объектов

<variant>Для модернизации способов хранения и обработки данных, вне тела класса

<variant>Чтобы переписывать (модернизировать) методы доступа

<variant>Чтобы обеспечивать вызов методов во внешнем программном окружении

<question> Что такое оператор ввода, и как он работает?

<variant>Оператор ввода (») является членом объекта istream и используется для записи данных в переменные программы

<variant>Оператор ввода (») является членом объекта dream и используется для записи данных в переменные программы

<variant>Все ответы не правильны

<variant>Оператор ввода (») является членом объекта istream и используется для записи адреса в переменные программы

<variant>Оператор ввода (») не является членом объекта istream и используется для записи данных в переменные программы

<question> Что такое UML?

<variant>Универсальный язык объектного моделирования систем

<variant>Язык объектного моделирования систем

<variant>Язык объектного программирования

<variant>Графический редактор при моделировании систем

<variant>Язык структурирования и описание поведения объектов систем

<question> Пусть определены целые переменные: int a= 2, b=3, c=4;

Укажите правильное определение переменной ссылочного типа?

<variant>int& r = a;

<variant>Point & r = Point;

<variant>void& r = b;

<variant>int& r = new int(4);

<variant>int& ar[] = {a,b,c};

<question> Выберите вариант ответа, где указаны все строки, в которых компилятор обнаружит ошибки?

1) class Point

2) { private: int x;

3) public: void Print( );

4) int Getx ( ) const ;

5) };

6) void main ( )

7) { Point p;

8) p.x = 9;

9) Point . Print ( ) ;

10) Point obj(2);

11) }

<variant>6,7,8

<variant>2,4,6

<variant>8,9,10

<variant>4,7,8

<variant><variant> 7,8,10

<question> Какая разница между выражениями if (x=3) и if(x= =3)?

<variant>Первое выражение присваивает переменной х значение 3 и возвращает false. Второе выражение проверяет, равно ли значение переменной х числу 3, и возвращает true, если значение переменной х равно 3, и – false в противном случае.

<variant>Первое выражение присваивает переменной х значение 3 и возвращает true. Второе выражение проверяет, равно ли значение переменной х числу 3, и возвращает True, если значение переменной х равно 3, и – false в противном случае.

<variant>Первое выражение проверяет, равно ли значение переменной х числу 3, и возвращает true, если значение переменной х равно 3, и – false в противном случае. Второе выражение присваивает переменной х значение 3 и возвращает true.

<variant>Первое выражение проверяет, равно ли значение переменной х числу 3, и возвращает true, если значение переменной х равно 3, и – false в противном случае. Второе выражение присваивает переменной х значение 3 и возвращает false.

<variant>Все ответы не правильны

<question> Если перечисление (enum) задано следующим образом, то каковы значение элемента Blue?

enum Color {WHITE, BLACK=100, RED, BLUE, GREEN=300};

<variant>BLUE=103

<variant>BLUE=102

<variant>BLUE=104

<variant>BLUE=105

<variant>BLUE=106

<question> Чем отличается конструктор копий от оператора присваивания (=)?

<variant>Оператор присвоения создает новый временный объект, а конструктор копий работает с существующим объектом

<variant>Оператор присвоения работает с существующим объектом, а конструктор копий создает новый временный объект.

<variant>Нет никаких отличий

<variant>Оператор присвоения не работает с существующим объектом, а конструктор копий – да.

<variant>Все ответы не правильны

<question> Что представляет собой указатель this?

<variant>Это открытый параметр, который указывает на сам объект.

<variant>Это закрытый параметр, который указывает на сам объект.

<variant>Это скрытый параметр, который указывает на сам объект.

<variant>Это скрытый параметр, который указывает на другой объект.

<variant>Это скрытый параметр, который не указывает на сам объект.

<question> Чем отличаются варианты перегруженных функций-членов?

<variant>Перегруженных функции-членов класса имеют разные имена, но отличаются количеством или типом параметров.

<variant>Перегруженных функции-членов класса не имеют одинаковое имя, но отличаются количеством или типом параметров.

<variant>Перегруженных функции-членов класса имеют одинаковое имя, но не отличаются количеством или типом параметров.

<variant>Перегруженных функции-членов класса имеют одинаковое имя, но отличаются количеством или типом параметров.

<variant>Все ответы не правильны.

<question> В чем разница между определением и объявлением?

<variant>Определение резервирует память, а объявление – нет. Объявления часто являются и определениями, за исключением объявлений классов, прототипов функций и новых типов с помощью ключевого слова typedef.

<variant>Определение не резервирует память, а объявление – да. Объявления часто являются и определениями, за исключением объявлений классов, прототипов функций и новых типов с помощью ключевого слова typedef.

<variant>Определение резервирует память, а – нет. Объявления часто являются и определениями, за исключением объявлений классов, прототипов функций и новых типов с помощью ключевого слова typerun.

<variant>Нет никакой разницы

<variant>Все ответы не правильны

<question> Когда вызывается конструктор копирования ?

<variant>Всегда, когда создается временная копия объекта. Это случается один раз, когда объект передается как параметр.

<variant>Когда нужно удалить оригинал объекта.

<variant>Всегда, когда создается временная копия объекта. Это случается каждый раз, когда объект передается в функцию как значение.

<variant>Всегда, когда создается переменный объект. Это случается каждый раз, когда объект передается как значение.

<variant>Все ответы не правильны.

<question> Когда вызывается деструктор?

<variant>Деструктор вызывается каждый раз при восстановлении объекта.

<variant>Деструктор не вызывается каждый раз при удалении объекта, это происходит либо при выходе его из области действия, либо при вызове оператора delete для указателя на данный объект.

<variant>Деструктор вызывается каждый раз при удалении объекта, что происходит либо при выходе его из области действия, либо при вызове оператора delete для указателя на данный объект.

<variant>Деструктор вызывается каждый раз при удалении объекта, что происходит либо при выходе его из области действия, либо при вызове оператора typedef для указателя на данный объект.

<variant>Все ответы не правильны.

<question> В чем различие между ссылкой и указателем?

<variant>Ссылка представляет собой псевдоним, а указатель – это переменная, которая содержит данные. Ссылки могут быть нулевыми и могут быть переназначены.

<variant>Ссылка представляет собой переменную, а указатель – это псевдоним, которая содержит адрес. Ссылки не могут быть нулевыми и не могут быть переназначены.

<variant>Ссылка представляет собой псевдоним, а указатель – это переменная, которая содержит адрес. Ссылки не могут быть нулевыми и не могут быть переназначены.

<variant>Ссылка представляет собой функции члена класса, а указатель – это переменная, которая содержит адрес. Ссылки не могут быть нулевыми и не могут быть переназначены.

<variant>Все ответы не правильны.

<question> Когда нужно использовать именно указатель, а не ссылку?

<variant>Если необходимо назначить указателю новую переменную или сделать указатель нулевым.

<variant>Если необходимо назначить указателю уже использованную переменную или сделать указатель нулевым.

<variant>Если необходимо назначить указателю новую переменную или сделать указатель нулевым.

<variant>Нельзя использовать указатель без помощи ссылки

<variant>Все ответы не правильны

<question> Что возвращает оператор new, если для создания нового объекта недостаточно памяти?

<variant>Ничего не возвращает

<variant>Нулевый указатель.

<variant>Нулевый результат

<variant>Все ответы правильны

<variant>Все ответы не правильны.

<question> Какой оператор возвращает адрес переменной?

<variant>Оператор обращения к адресу (&)используется для определения адреса любой переменной.

<variant>Оператор взятия значения (*) используется для определения адреса любой переменной.

<variant>Оператор ввода (>>) используется для определения адреса любой переменной

<variant>Оператор вывода (<<) используется для определения адреса любой переменной

<variant><variant> Все ответы не правильны

<question> Какой оператор используется для получения значения, хранимого по адресу, находящемуся в указателе?

<variant>Оператор взятия значения ($) используется для доступа к значению, которое находится по адресу, содержащемуся в указателе

<variant>Оператор взятия значения (*) используется для доступа к значению, которое находится по адресу, содержащемуся в указателе

<variant>Оператор взятия значения (#) используется для доступа к значению, которое находится по адресу, содержащемуся в указателе

<variant>Оператор взятия значения (%) используется для доступа к значению, которое находится по адресу, содержащемуся в указателе

<variant>Оператор взятия значения (@) используется для доступа к значению, которое находится по адресу, содержащемуся в указателе

<question> Что такое указатель?

<variant>Указатель – это переменная, которая содержит адрес функции-члена

<variant>Указатель – это переменная, которая содержит адрес другой переменной.

<variant>Указатель – это переменная, которая содержит адрес члена класса

<variant>Указатель – это переменная, которая содержит параметр другой переменной

<variant>Все ответы не правильны

<question> Что описывает документ «Описание прецедентов», создаваемый на этапе анализа проекта?

<variant>Список характеристик и ограничений, наложенных заказчиком

<variant>Взаимосвязи объектов сферы деятельности

<variant>Системные и аппаратные средства, на которых предстоит реализовать проект.

<variant>Прецеденты, сценарии, предварительные и окончательные условия, а также визуализацию структуры проекта.

<variant>Описание требований заказчика к проекту

<question> В чем разница между оператором косвенного доступа и оператором обращения к адресу?

<variant>Оператор косвенного доступа (*) возвращает адрес переменной в памяти, хранимому в указателе, а оператор обращения к адресу (&) возвращает значение по адресу.

<variant>Оператор косвенного доступа (*) не возвращает значение по адресу, а оператор обращения к адресу (&) – да.

<variant>Нет никакой разницы

<variant>Оператор косвенного доступа (*) возвращает значение по адресу, хранимому в указателе, а оператор обращения к адресу (&) возвращает адрес переменной в памяти.

<variant>Оператор косвенного доступа (*) возвращает значение по адресу, хранимому в указателе, а оператор обращения к адресу (&) возвращает параметр переменной в памяти

<question> Если объявлена переменная типа unsigned short с именем yourAge, как объявить указатель на нее?

<variant>unsigned short *pAge = &yourAge;

<variant>unsigned short *pAge = &yourAge

<variant>unsigned short pAge = &yourAge;

<variant>unsigned short *pAge = yourAge;

<variant>unsigned *pAge = &yourAge;

<question> Присвойте переменной yourAge значение 50 с помощью указателя unsigned short *pAge = &yourAge;

<variant>*pAge = 50;

<variant>*Age = 50;

<variant>pAge = 50;

<variant>*pAge* = 50

<variant>*p= 50;

<question> Можно ли организовать цикл while внутри цикла for?

<variant>Да. Любой цикл может быть вложен внутрь другого цикла

<variant>Нет. Любой цикл не может быть вложен внутрь другого цикла

<variant>while и for не являются циклами

<variant>Нет. Если параметры не совпадают

<variant>Все ответы не правильны

<question> Отладка: какая ошибка допущена в следующем объявлении?

class Square

{

public :

Int Side;

}

<variant>Ошибки нет.

<variant>Объявление класса должно заканчиваться точкой с запятой

<variant>После public не ставится двоеточие

<variant>Фигурные скобки излишни

<variant>Все ответы не правильны

<question> Отладка: что весьма полезное отсутствует в объявлении этого класса?

class Cat

{

Int GetAge() const;

private :

Int itsAge;

};

<variant>точка с запятой - лишние

<variant>Метод доступа к данным GetAge() является открытым по умолчанию. Помните: все члены класса считаются зоткрытыми, если не оговорено иначе.

<variant>private пишется с большой буквы

<variant>Метод доступа к данным GetAge() является закрытым по умолчанию. Помните: все члены класса считаются закрытыми, если не оговорено иначе

<variant>Все ответы не правильны

<question> В чем особенность функции main()?

<variant>Функция main() не вызывается при каждом выполнении программы. Она не может быть вызвана какой-либо другой функцией и не обязательно должен присутствовать в каждой программе.

<variant>Функция main() вызывается автоматически при каждом выполнении программы. Она не может быть вызвана какой-либо другой функцией и обязательно должен присутствовать в каждой программе.

<variant>Функция main() вызывается автоматически при каждом выполнении программы. Она может быть вызвана какой-либо другой функцией и не обязательно должен присутствовать в каждой программе.

<variant>Все ответы не правильны

<variant>функции main() не существует

<question> Укажите ошибку в описании метода main()?

#include<iostream.h>

Int main()

{ int a = 5; int b = 7;

cout << a % b << ”\n”;

}

<variant>Должно быть подключение файла <conio.h>

<variant>Метод main() должен иметь параметры

<variant>Метод main() должен содержать оператор, возвращающий целое число в систему.<variant>Нельзя использовать подряд идущие операции <<

<variant>Ошибки нет

<question> Укажите ошибку в описании класса Point?

#include < iostream.h >

class Point

{ int x,y;

Point (int a, int <variant>{ x = a; y = b; }

void Print (){ cout << x << y;}

};

<variant>Отсутствует спецификатор private перед описанием переменных Х и Y

<variant>Отсутствует тип возвращаемого значения у конструктора.

<variant>Члены-данные класса x и y не доступны функциям класса

<variant>Отсутствует тип возвращаемого значения функции Print

<variant>Члены-данные класса x и y доступны функциям класса

<question> Укажите ошибку в описании класса Point?

#include < iostream.h >

class Point

{ public:

int x,y;

Point (int a, int <variant>{ x=a; y=b; }

void Print (){ cout << x << y;}

};

<variant>Члены -данные x и y закрыты для доступа

<variant>Нарушен принцип инкапсуляции, так как члены –данные х,у объявлены открытыми для доступа

<variant>Конструктор класса должен иметь тип возвращаемого значения

<variant>После фигурной скобки завершения описания класса не ставится разделитель “;”

<variant>Ошибки в описании нет

<question> Укажите ошибку в описании класса Point?

#include < conio.h >

class Point

{ int x;

public:

Point (){}

void Print() { cout <<x;}

};

<variant>Ошибки в описании нет

<variant>Член – данное х не доступен функции Print

<variant>В конструкторе должен быть указан параметр

<variant>Конструктор должен иметь тип возвращаемого значения

<variant>Операция вывода на консоль “<<” не обеспечена соответствующим файлом компилятора

<question> Для чего в языке С++ используется объекты cin и cout ?

<variant>Обеспечивают ввод и вывод данных в программе

<variant>Являются необходимыми операндами операции >> и <<, соответственно

<variant>Являются потоковыми объектами для описываемого пользовательского типа.

<variant>Обеспечивают ввод данных в программу

<variant>Обеспечивают вывод данных из программы

<question> Имеются ли ошибки в следующем описании класса Point?

#include < iostream.h >

class Point

{ private:

int x;

public:

Point (){}

void Print () { cout << “x=” <<x;}

};

<variant>Нет, не имеются

<variant>Нельзя перед членами-данными класса ставить спецификатор доступа private, так как это очевидно по умолчанию

<variant>Поскольку класс описывается с ключевым словом «class», слово private- излишне

<variant>Конструктор должен иметь параметры

<variant>Члены - данные класса должны определяться с начальными значениями

<question> Для каких целей используются комментарии в программе на языке С++? Укажите некорректный способ применения

<variant>Для комментирования произведенных изменений в программе

<variant>Для разъяснения очевидных мест программы

<variant>Для разъяснения операторов, и для чего они используются

<variant>Сообщать компилятору игнорировать все, что следует за символом комментария, или находится между символами комментариев

<variant>Для временного отключения больших участков программы

<question> Каково назначение комментариев перед функцией программы? Укажите наиболее приемлемый ответ

<variant>Пояснить, что делает данная функция

<variant>Чтобы сделать еще понятнее грамотно написанный код

<variant>Пояснить какое значение функция возвращает

<variant>Как перевод неряшливо написанного кода

<variant>Как оправдание программиста за свою леность

<question> Укажите символы и их сочетания, которые применяются в языке С++ для комментариев?

<variant>. ‘/’.

<variant>‘//’…’//’.

<variant>‘*/’…’/*’ и ‘/’…’/’.

<variant>‘/*’ и ‘//’ .

<variant>/*…*/ и ’//’

<question> В чем разница между символами комментариев // и /* ?

<variant>Разницы никакой нет

<variant>Первый – однострочный, т.е. распространяется до конца строки, а второй – пока не встретится символ завершения комментария

<variant>Оба символа могут обеспечивать многострочный комментарий

<variant>Оба символа обеспечивают только однострочный комментарий

<variant>Разница лишь в написании символов

<question> Что такое класс, с точки зрения объектно-ориентированного программирования?

<variant>Идентификатор типа для переменной

<variant>Абстракция понятия предметной области

<variant>Название сущности

<variant>Объективная реальность мира

<variant>Пользовательский тип данных

<question> Каким образом в программе можно вводить удобные обозначения для сложных описаний типов?

<variant>Использованием базовых типов и их сочетаний

<variant>Введением нового типа

<variant>Использовать спецификатор typeid

<variant>Конструированием производных типов

<variant>С помощью различных сочетаний служебных слов

<question> Что обозначает следующий формат производного типа (с именем type):

type * имя;

<variant>Переменная типа type

<variant>Ссылка на объекты типа type

<variant>Указатель на ссылку типа type

<variant>Указатель на объекты типа type

<variant>Объект типа type

<question> Что обозначает следующий формат: type1 * имя (type2);

<variant>Функция, принимающая аргумент типа type2 и возвращающая указатель на объект типа type1

<variant>Указатель на функцию, принимающую параметр типа type2 и возвращающую значение типа type1

<variant>Указатель на функцию, принимающую параметр типа type2 и возвращающую указатель на объект типа type1

<variant>Ссылка на функцию, возвращающую значение типа type1

<variant>Функция с параметром type2 и результатом типа type1

<question> На какие типы принято разделять все возможные производные типы?

<variant>На классы

<variant>На скалярные

<variant>На агрегатные (структурированные)

<variant>На А,В и С

<variant>На А и В

<question> Так как с объектом связано значение, то для объекта задается тип, который:

<variant>Используется для контроля типа

<variant>Определяет требуемое для объекта количество памяти

<variant>Задаем совокупность операций, допустимых для объекта

<variant>Интерпретирует двоичные коды значений при последующих обращениях к объекту

<variant>А, В, С и D

<question> Что включают агрегатные (структурированные) типы?

<variant>Структуры

<variant>Массивы

<variant>А, В, С и D

<variant>Объединения

<variant>Классы

<question> Какое из следующих выражений не является право - допустимым ? Укажите неправильный ответ

<variant>Вызов функции, не возвращающей ссылки

<variant>Имя функции

<variant>Имя массива

<variant>Имя константы

<variant>Имя указателя

<question> Что, кроме типов, для объектов явно, либо по умолчанию, не определяется?

<variant>Продолжительность существования объектов и их имен

<variant>Класс памяти

<variant>Видимость объекта

<variant>Использование объекта в лево - либо право -допустимом выражении

<variant>Тип компоновки (связывания)

<question> Описание массива (без указания размера и без списка начальных значений) может использоваться:

<variant>При работе с массивом

<variant>В определении массива

<variant>При инициализации массива

<variant>В списке формальных параметров при определении функции

<variant>По усмотрению программиста

<question> Пусть int a=40; int b=50; Какое из выражений выяснит неравенство этих переменных( то есть даст значение true)?

<variant>! (a= =<variant>

<variant>a = b

<variant>a <= b && a >= b

<variant>a = = b

<variant>! (a!=<variant>

<question> Пусть int a=40; int b=50;. Укажите ошибку при применении условного оператора if ?

<variant>if (a = = <variant>{int c = a + b;}

<variant>if (a = <variant>{int c = a + b;}

<variant>if (a ! = <variant>a = b;

<variant>if (a < b || a = = <variant>a = b; b = 0;

<variant>int c = (a ! =<variant>? a : b;

<question> Что такое рекурсия?

<variant>Это способность функции использовать глобальные переменные

<variant>Это способность функции вызывать саму себя

<variant>Это способность функции использовать локальные переменные

<variant>Это способность функции использовать механизм обратного вызова

<variant>Это возможность функции вызывать в своем теле любую другую

<question> Что неправильно в этой функции?

# include<iostream.h>

void f (int x) {return x+x;}