Язык программирования C++ для профессионалов - ответы на тесты Интуит
Все ответы: Курс дает описание языка C++, его ключевых понятий и основных приемов программирования на нем. Это завершенное руководство, написанное создателем языка, которое содержит описание всех средств С++, в том числе управление исключительными ситуациями, шаблоны типа (параметризованные типы данных) и множественное наследование.
Каким языком является С++?
В каком файле определяются операторы ввода и вывода?
iostream.h
istream.h
ostream.h
Что подразумевается под проектированием программного продукта?
Какой вид иерархии реализует наследование?
Что такое конкретный тип?
Укажите неправильное описание переменной
char ar[10];
enum winter {december, january, february};
const c;
Что является результатом программы
х
после приращения: 4 у
после приращения: 4 Укажите правильные объявления функций:
void f(int, char*);
void f(double, char*, int=0);
void f(double, int* =0, int=1);
void f(double=0, int*, int=1);
void f(double=0 ...);
Какие принципы объектно-ориентированного программирования реализуются классами?
К каким методам и атрибутам базового класса имеет доступ производный класс?
public
private
protected
Как можно определить бинарную операцию?
func
, принимающей два параметра параметризующего типа template <class T>
template <class T> void func(T a, T b);
template <T> void func(T a, T b);
template <struct T> void func(T a, T b);а
Если существует несколько обработчиков особой ситуации, какой будет вызван?
Могут ли быть в классе несколько конструкторов и деструкторов?
Какая функция задает точность при выводе вещественного числа?
width(n);
precision(n);
setw(n);
Как называются операторы, изменяющие состояние объекта?
Какое отношение между классами реализовано в данном случае?
Что может представлять собой интерфейс?
Чему будет равна переменная x
?
Что будет напечатано в результате работы следующей программы?
2 4
4 2
5 2
Что можно делать с указателями на функции?
T* operator--();
T* operator--(int);
Сколько в программе может быть определений шаблона типа для функции-члена шаблонного класса?
Что произойдет, если при возникновении особой ситуации блок try
не будет обнаружен в данной функции?
try
будет продолжен в вызывающей функции и т.д. по стеку Какая функция устанавливает текущую позицию для чтения из файла?
seekg();
put();
get();
Укажите шаги для улучшения читаемости программы?
Какое отношение между классами реализовано в данном случае?
Что делает оператор new
?
Что возвращает функция, прототип которой объявлен следующим образом:
Что будет напечатано в результате работы следующей программы?
2 4
5 3
5 2
Если в качестве параметра функции указан массив, то передается:
Выберите правильный вариант обращения к элементам и использования класса A
:
A *\a* = [120];
A a[100];
A int [20];
A /a*/ = [11];
Имеется программный код:
func
:
1
2
3
Будет ли работать этот оператор?
template <список-параметров_шаблона> тип_возвращаемого_значения имя_функции (список параметров) {}
template (список-параметров_шаблона) определение_функции
<список-параметров_шаблона> template тип_возвращаемого_значения имя_функции (список параметров) {}
Каким способом функция может вернуть ошибку?
class Base {…};
. Какое из следующих объявлений правильно?class Derived inherits Base { ... };
class Derived : public Derived { ... };
class Derived : public Base { ... };
В чем заключается недостаток использования функции printf(...)
Какие из перечисленных ниже операций класса можно отнести к типу базовых?
Что называется инкапсуляцией?
Можно ли перегружать операции new
и delete
?
Что будет напечатано в результате выполнения фрагмента программы:
a \0x23 b
a # b
a
Какой результат будет после выполнения следующей программы?
4
5
0
1
Какой будет результат выполнения следующей программы?
7
0
6
Объявлен класс A
и объект d
:
с
?
d.c;
d.get_c();
d->get_c();
d->c;
Какие операторы можно использовать для выделения и освобождения динамической памяти?
new, delete
malloc, delete
new, free
malloc, free
Класс Point
имеет данные-члены int x,y
. Какая из следующих операторных функций содержит ошибку?
int Point::operator[] (int i) {if ( i == 0) return x; if(i==1) return y; else return -1;}
bool Point::operator==(Point a) { return (x==a.x && y==a.y);}
double Point::operator()() {return sqrt(x*x+y*y);}
Point& Point::operator++() {x++; y++; return this;}
Для списка с принудительной связью верно следующее:
Перечислите средства С++, позволяющие избежать ошибок:
Объявлен класс: class A { public: int a,b,c;}; A *obj;
. Как обратиться к переменной с?
obj->a->b->c
obj->c
obj->a.c
Что будет выведено на экран в результате работы следующего фрагмента программы:
1.234568e+02
123.457
123.456789
Что из перечисленного ниже облегчается, если программа имеет ясную внутреннюю структуру?
Отметьте все верные высказывания об интерфейсе:
Какая функция обеспечивает возможность использования имени в качестве уникального ключа объекта?
const char* name()const;
int has_base(const Type_info*, int direct=0) const;
int same(const Type_info* p) const;
int can_cast(const Type_info* p) const;
Отметьте верные высказывания для записи
enum {two = 2, three, four, ten = 10, eleven, fifty = ten + 40};
?
three
присваивается значение 3 eleven
присваивается значение 11 four
присваивается значение 3 eleven
присваивается значение, равное сумме значений констант three
и four
Что производит следующий программный код:
Что выводит данная программа, если она верна?
0
00
Какое из следующих объявлений класса не вызовет ошибки при компиляции?
Для чего нужны виртуальные базовые классы?
Выберете корректное объявление
1
2
3
Имеется программный код:
Выполнится ли код, содержащийся в блоке try { }
, если никакой ошибки не произошло?
Определены классы:
main()
правильны?
a.func();
a.Base1.func();
a.Base2.func();
a.Base1::func();
a.Base2::func();
<<
?1
2
3
В чем заключается недостаток модели «каскад»?
Почему метод объектно-ориентированного программирования предпочтительнее метода функциональной декомпозиции?
Интерфейсный базовый класс - это:
Оператором цикла с предусловием является оператор:
for (инициализация цикла; выражение-условие; список_выражений) тело_цикла
while (выражение-условие) тело_цикла
do тело_цикла while (выражение-условие)
Что будет напечатано в результате работы следующей программы?
5 13
0 0
Выберите правильные объявления дружественного класса:
class B{ ... }; class A { friend class B; };
class B{ ... }; class A { friend class A::B; };
class B{ ... }; class A { friend class B; }; class C { friend class A; };
Определены классы:
cout << obj.getx() << endl;
cout << obj->getx() << endl;
cout << obj->gety() << endl;
Чему будет равняться значение переменной x
после выполнения следующего кода:
Выберите верные прототипы шаблонов функций:
template <class T> void f1(T, int);
template <class T> void f3(const T&, long);
template <class T > T f4(int);
Какой результат будет у следующего выражения?
Exception
Exception 4 0
Exception 3 0
4 0
Член класса, объявленный с атрибутом доступа public
:
Что выведет на экран фрагмент программы char z[10]; while(cin >> z) cout << z << '\n';
после ввода текста, состоящего из нескольких слов, разделенных пробелами?
Почему использование моделей является не только допустимым, но и желательным?
Интерфейс определен следующим образом:
Y
и Z
используются так, что их определения должны быть известны X::f
неизвестна длина строки X::g
имеет низкий уровень абстракции Что подразумевает термин "сборщик мусора"?
В каких случаях из перечисленных ниже описание является определением?
Если int n=2, какой будет результат
YES
NO
MAYBE
Если в программе уже имеется функция с прототипом int func(int k, double f)
, то какое из следующих объявлений не вызовет ошибки компиляции?
double func(int m, double g)
int func(double x, int y
) double func(int m, double h, int d = 0)
void func(int m, double g = 3.14)
Какие типы конструкторов используются для инициализации объектов?
Произойдет ли ошибка при компиляции этого кода?
n
n=10
Какие из перечисленных ниже операторов не могут быть перегружены?
::
||
^=
?
~
Как осуществить вызов функции cmp()
для параметров int a1, double b1
?
bool c = cmp(a1, int(b1));
b2 = int(b1); bool c = cmp(a1, b2);
bool c = cmp(a1, b1);
Что производит эта программа?
Если имеется код char a[8]; cin >> a;
и вводится текст "Hello world"
, то что будет в массиве a
?
Hello world
wo
Hello w
Hello
Что понимается под сопровождением программного обеспечения?
Как называется язык, если в нем реализованы классы, но не реализовано наследование?
Какие ограничения накладывает использование абстрактных классов?
Каково назначение параметра argc
программы main
?
Какие из следующих прототипов функций содержат ошибки?
void func();
char error(int a, b);
arr[10] sum(int *, int );
float* func(float, float);
Какие утверждения являются правильными?
100
целых величин 100
0
2
3
Какая строка данного кода производит специализацию шаблона?
В конструкторе класса
ptr
и тогда делать выводы A
В каком классе находится функция seekg(streampos)
?
iostream
ostream
istream
ios
Чем объект отличается от класса?
Есть ли в С++ специальные средства для описания интерфейсов?
Что такое библиотека?
Что обозначает данный код?
someFunc ()
someFunc
someFunc
Каким будет результат работы следующей программы?
5
4.5
4
3.5
В программе имеется функция с прототипом int func(int k, double f)
. Какое из следующих объявлений приведет к ошибке компиляции?
Какие служебные слова могут быть использованы в качестве типа класса?
class
struct
operator
friend
enum
Что будет выведено на экран в результате выполнения приведенной ниже программы:
7,1
6 11
1,3 5,8
Можно ли создать шаблон сразу по нескольким типам?
Имеются следующие обработчики ошибок:
d
, какой обработчик будет вызван?
catch (d){код 4}
catch (d){код 5}
catch (d){код 4}
и catch (d){код 5}
Абстракция данных - это:
Отметьте истинные высказывания в отношении потоков, представленные классом strstream
:
Как называется процесс отделения друг от друга элементов объекта, определяющих его устройство и поведение?
Если метод в базовом классе не объявлен как виртуальный, а в производном он переопределен, когда определяется, какой из методов вызывается?
Выберите правильные записи целых констант:
0x16
2147483645
40000L
a136
Выберите корректные части кода
void func (int x =0);
void func (int x +=0);
void func (int x = 0, int y);
Какими по умолчанию являются элементы структуры?
protected
public
private
Можно ли осуществить явное преобразование типа объекта к типу абстрактного класса?
Чем механизм шаблонов отличается от механизма перегрузки
Какая функция будет первой вызвана, если особая ситуация запущена и не перехвачена?
unexpected()
terminate()
abort()
Парадигма программирования, поддерживающего абстракцию данных, заключается в следующем:
Какой результат будет у следующего выражения?
C:\test.txt
" с содержимым "1 25 2.5e+07 Test
" Ошибка создания файла
" C:\Test
" с содержимым "1 25 2.5e+07 Test
" Что должно стать результатом проектирования создаваемой системы?
В каком случае подкласс абстрактного класса сам не является абстрактным?
Какой результат будет у следующего выражения?
8
9
10
Что значит операция:<<
?
С какого символа начинаются директивы препроцессору?
*
<
#
Какой будет результат следующей программы?
11
10
12
Можно ли создать виртуальную функцию, имитирующую виртуальный конструктор?
Выберите верное утверждение:
operator[]
возвращает объект operator[]
возвращает ссылку на объект Какой будет результат следующего выражения?
10
14
11
Какой оператор отслеживает исключительную ситуацию?
catch
try
throw
Что делает манипулятор flush
?
Какими качествами должен обладать программный продукт?
Какие существуют виды наследования?
Что произойдет, если чисто виртуальный метод не определить в производном классе?
Задан массив:
m[2][3]
?
Перечислите побитовые логические операторы:
|
&
^
+
*
Что называется фактическими параметрами функции?
Определите результат работы данной программы для A a; B b; b.f();
Какой будет результат следующего выражения?
5 6.2
6.2 7
7 6.2
Как будет работать такой блок:
Обязательно ли задавать в программе тип переменной?
Правильно ли написан нижеприведенный программный код?
Расставьте шаги проектирования классов в наиболее правильном порядке:
1, 2, 3, 4, 5
1, 2, 4, 5, 3
1, 4, 3, 5, 2
1, 5, 2, 4, 3
Какой вид иерархии реализует использование?
Перечислите свойства абстрактного типа?
abstract
Что произойдет при выполнении данного оператора switch
, если val = 1
?
а()
a(), b()
a(), b(), c()
Когда функция вызывает саму себя она называется:
Чем класс отличается от структуры?
Объявлены классы:
A* p;
b->a = 7;
A* p = b;
c->a = 7;
A* p = (A*)c;
d->a = 7;
A* p = d;
Что будет выведено на экран после выполнения программы?
0
5
10
11
Какое объявление функции-шаблона func
верно?
void func<T>(T a, T b);
template <T> void func( a, b);
template <class T> void func(T a, T b);
Верна ли следующая программа?
Какая директива включает стандартные возможности ввода и вывода?
#include <fstream.h>
#include <iostream.h>
#include <math.h>
Что будет выведено в результате исполнения следующего кода?
12.509
12.5
.509
12.
Как называются операторы, порождающие объект другого типа?
Если объект класса А
может содержать несколько объектов класса В
, какое должно быть между ними отношение?
Что произойдет если вызвать delete
для несуществующего указателя?
В программе имеется функция с прототипом int func(int k, double f)
. Какое из следующих объявлений приведет к ошибке компиляции?
Можно ли переопределить операторы new
и delete
?
new
delete
Отметьте все допустимые способы перегрузки данной функции:
void func(int a, int b);
int func(double a, char c);
void func(int a, double b);
void func(int a=1, double b);
Что обозначает запись class A { virtual f() = 0; };
?
Какой из этих операторов сложения возвращает сумму по значению?
operator+();
operator++();
Шаблоны каких функций можно определить в программе?
Есть ли ошибка в следующем коде?
catch
не может быть несколько catch(...)
ошибочен catch(...)
должен стоять последним Если имеется код double x; cin >> x;
и вводится "12-3
", то что будет в переменной x
?
9.0
9
12.0
12
3.0
Какой наиболее правильный порядок создания проекта:
1, 2, 3, 4
1, 2, 4 ,3
1, 4, 3, 2
Какими способами класс Х
может использовать класс Y
?
X
вызывает функцию-член Y
X
читает член Y
X
пишет в член Y
X
разрушает Y
Когда освобождается память, выделенная для объекта?
delete
Как обратиться к элементу x
переменной v
, объявленной следующим образом:
v.x
x
v->x
Что будет напечатано при выполнении фрагмента кода:
Отметьте правильные прототипы функций, использующих в качестве параметра массив:
void F(int Ar[]);
int F(const int array[], int sz);
int strlen(const char*);
В каком из вариантов объявление класса ошибочно?
Будет ли работать этот оператор:
result
- локальный объект Выберите верные прототипы шаблонов функций:
template <class T> void f1(T);
template <class T, class U> char f2(T*, U);
template <class T> *T f3(long);
template <class T, class U> U f4(&T);
Какая функция вызывается при аварийном завершении программы?
exit();
terminate();
close();
Отличия функций-членов от обычных функций:
Объектом какого класса является оператор cout
?
ostream
istream
conbuf
filebuf
Какие из перечисленных ниже операций класса можно отнести к типу преобразований?
Что называется иерархичностью?
В каких из следующих операторов есть синтаксические ошибки?
char *s2[]="mnbvcx";
char s3[5]="qwerty";
char *s4="mnbvcx";
Какие из следующих операторов обеспечивают бесконечный цикл?
while(1);
for(; ;);
for(;1;);
while(0);
Какой будет результат выполнения следующей программы?
7
10
6
Объявлен класс class A { public: int a,b,c;}; A *obj;
Как обратиться к переменной с
?
obj.c
obj->a->b->c
obj->c
obj->a.c
Какие библиотечные функции можно использовать для выделения и освобождения динамической памяти?
new, delete
malloc, delete
new, free
malloc, free
Класс Point
имеет данные-члены int x,y
. Какая из следующих операторных функций содержит ошибку?
Point& Point::operator++() {x++; y++; return *this;}
Point& Point::operator--(Point &a) { a.x--;a.y--;return a;}
Point operator--(Point& a,int n)
{ Point temp=a;
if(n!=0) {for(int i=0;i<n;i++) --a;}
else --a;
return temp;
}
Для списка без принудительной связи верно следующее:
Где может встречаться блок try-catch
?
main
main
Объявлен класс: class A { public: int a,b,c;}; A obj;
. Как обратиться к переменной с?
obj.c
obj->c
obj->a.c
Что будет выведено на экран в результате работы следующего фрагмента программы:
1.234568e+02
123.457
123.456789
Что из перечисленного ниже облегчается, если программа имеет ясную внутреннюю структуру?
Основные типы классов:
Какое определение наиболее точно соответствует понятию "каркас области приложения"?
Чему будет равняться значение переменной "ii"
после выполнения приведенного ниже кода?
В каком выражении произойдет зацикливание программы?
for (int iCount = 0; iCount <= 4;);
while (true);
while (false);
Что описывает оператор typedef float (*ptr)(char);
char
и возвращает значение типа float
float
и возвращает значение типа char
Отметьте правильное создание объекта вложенного класса cls2
, если имеется следующее объявление:
cls1::cls2 c2;
cls2 c2;
cls2::cls1 c2;
Объявлены классы:
derived
к членам x, y, fun
класса base
.
x,y
– недоступны, fun – protected
x,y – private, fun - protected
x,y, fun – protected
Чему будет равняться переменная "z"
после выполнения следующего кода:
0
1
4
Имеется программный код:
Если происходит ошибка при выполнении функции new
, то
memoryexception
Верно ли объявлены следующие классы:
MyClass1
MyClass2
Что возвращает функция-оператор <<?
ostream
Какие качества являются необходимыми для успешного развития системы?
В чем состоит преимущество строго типизированных интерфейсов?
В каких случаях использование интерфейсных классов обеспечивает более эффективный интерфейс?
Что будет напечатано в результате выполнения фрагмента программы?
abcd
abcd yuio
Оператором итерационного цикла является оператор:
for (инициализация цикла; выражение-условие; список_выражений) тело_цикла
while (выражение-условие) тело_цикла
do тело_цикла while (выражение-условие)
Что будет напечатано в результате работы следующей программы?
5 2
5 4
2 1
Выберите правильное объявление дружественной функции:
class A { public: friend bool fun(A & obj1, A & obj2); };
class A { public: bool friend fun(A & obj1, A & obj2); };
class A { public: bool fun(A & obj1, A & obj2) friend; };
Определены классы:
cout << (*obj).gety() << endl;
cout << obj->getx() << endl;
cout << obj.getz() << endl;
К операторам языка С++, которые нельзя перегружать, относят
#
[]
*
Определен шаблон и описаны объекты класса:
y2=y4
y1=y2
y1=y3
y1=y4
Какой результат будет у следующего выражения?
Exception
Exception 9 5
Exception 10 5
9 5
Член класса, объявленный с атрибутом доступа protected
:
Что выведет на экран фрагмент программы int a = 12; cout << '(' << setw(0) << a << ')';
?
(12)
()
(12.0)
При проектировании компонент полезно:
Интерфейс определен следующим образом:
X::f
неизвестна длина строки X::h
может быть произвольное число параметров Y
и Z
используются так, что их определения должны быть известны Для чего предназначен сервер заявок?
Какие из нижеприведенных описаний являются определениями?
extern int g;
float fun(int,double);
float x = 10.0;
const float pi = 3.14159;
enum{zero,one,two};
Нужно выделить память для одномерного массива А
, состоящего из 10 элементов и затем освободить эту память. Какие из приведенных операторов пригодны для этой цели?
int *A; A = new int(10); … delete [] A;
int *A; A = new int[10]; … delete [] A;
int A = new int[10]; … delete [] A;;
int func(int k, double f)
. Какое из следующих объявлений не приведет к ошибке компиляции?char func(int m, void(double g))
int func(double x, int y)
func(int m, void(double g = 3.14))
Объявляется класс T
. Какой из следующих прототипов конструкторов является конструктором по умолчанию?
T();
T(int, int);
T(const A&);
Определены классы:
С
А
В
Какой из перечисленных ниже операторов не может быть перегружен?
.
|
>>
Выберите вариант правильного объявления шаблона класса A:
Для чего предназначена следующая программа и верна ли она:
Операции отношения языка С++:
Что будет выведено в результате
"12.40***"
" 12.4***"
"12.4 * *"
"12.40"
Что понимается под эволюцией программного обеспечения?
Какой из способов описания функций и переменных, совместно используемых несколькими классами, наиболее безопасен?
Определены классы:
wind_fig
?
Верен ли нижеприведенный код? Каков результат его работы?
Каково назначение параметра argv
программы main
?
Какие из следующих прототипов функций содержат ошибки?
void display(int x=1, char *s);
void * func();
void write(void);
int[10] sum( int *, int );
int ff( int a, int b = 0, int с = 0 );
Какие утверждения являются правильными?
~
Какие функции называются чисто виртуальными?
private
=0
Сколько операндов должна иметь операторная функция бинарного оператора, объявленная как глобальная функция?
0
1
2
3
Заголовок обобщенного метода print
шаблона List
имеет вид template <class Data> void List <Data>::print();
. Что для данной записи обозначает следующее:
Класс A
имеет следующее определение:
"A a(0);"
4 2 1 0 -1
1 0 -1
1 0 4 -1
Какая функция должна присутствовать в каждой программе С++?
cout
main;
begin
Какой заголовочный файл нужно подключить, чтобы использовать объекты классов ofstream, ifstream, fstream
?
iostream.h
stdio.h
fstream.h
iomanip.h
Какие выделяются абстракции?
Перечислите верные ответы:
Какая из функций является чисто виртуальной?
virtual void f();
virtual void f(int x)=0;
virtual void f(){};
Что будет выведено на экран в результате выполнения приведенной ниже программы:
Каким будет результат работы следующей программы?
8
7.5
7
6.5
Выберите корректные (компилируемые) части кода:
Дано определение классов:
"x"
класса "MyClass0"
в производном классе "MyClass1"
?
public
protected
private
Объявлен некоторый класс A
. Функция объявляется внутри класса A
. Выберите корректные варианты объявления функции перегрузки оператора.
A operator+(A&a, A&b);
A operator+(const A&a);
A operator+(A a);
Можно ли создать шаблон c несколькими параметрами?
Имеются следующие обработчики ошибок:
d
, какой обработчик будет вызван?
catch (d){код 4}
catch (d){код 5}
catch (d){код 4}
и catch (...){код 5}
Парадигма процедурного программирования заключается в следующем:
В файлы f1.txt
и f2.txt
записана строка символов 1234. Что будет выведено на экран в результате работы следующего фрагмента программы:
1433
1234
1334
Какими свойствами обладают объекты?
Может ли деструктор быть виртуальным?
Выберите правильные записи констант с плавающей точкой:
3.32
.892
3.2e10
Что определяет операция sizeof(str);
?
Какие команды используются для создания библиотеки?
$ CC -c
список_ файлов $ ar cr
имя_библиотеки список_ файлов с расширением о $ ranlib
имя_библиотеки $ CC
имя_библиотеки Какими по умолчанию являются элементы класса?
protected
public
private
Каков будет результат , если конструктор абстрактного класса вызовет чисто виртуальную функцию?
Каков синтаксис функций (или операторов) преобразования объекта одного типа в объект другого типа?
operator <имя нового типа>();
<имя нового типа> operator ()
; operator <имя нового типа>(<имя старого типа>);
Чем отличается шаблон функции от обычной функции?
Какая функция будет первой вызвана, если функция запустила особую ситуацию, не указанную в ее описании
unexpected()
terminate()
abort()
Какой результат будет у следующего выражения?
C:\tst.txt
" с содержимым "5 10 25 Test
" Ошибка создания файла
" C:\Tst
" с содержимым "5 10 25 Test
" Что должно стать результатом анализа создаваемой системы?
Выберите верные утверждения для операторов new
и delete
, перегруженных в базовом классе:
Укажите тернарные операции:
&
<<
&&
||
? :
Какая директива препроцессору служит для включения в текст файла текста, содержащегося в другом файле?
define
ifndef
include
extern
Какой будет результат следующей программы?
15
12
16
Выберите верное утверждение:
операнд_1(операнд_2)
operator
Какой будет результат следующего выражения?
8.3
7.2
10.2
Какой оператор генерирует исключительную ситуацию?
catch
try
throw
Что выведет следующий код?
()
(abcdef)
(ab)
(a
Что понимается под компонентом?
Какое свойство объекта называется инвариантом?
Что представляет собой обширный интерфейс?
Что будет выведено на экран после выполнения программы?
0
5
10
11
Выберите корректное определение класса Name
Name class{}
Name{}
class Name(){}
class Name{};
Верен ли данный код:
Какая ошибка в таком определении шаблона: template <class T, T def_val> class My {};
Что собой представляет исключительная ситуация?
Что называется перегрузкой функций?
Какие стандартные потоки имеются в С++?
cin
cout
Какие существуют виды иерархии классов?
Какой вид иерархии реализует принадлежность?
Приведите примеры конкретного типа:
Укажите правильно заданные идентификаторы
struct
2cars
money$sum
this_is_a_variable
Расставьте операторы согласно их приоритета (по восходящей):
<<
==
sizeof
++
1, 2, 3, 4
2, 1, 3, 4
1, 4, 3, 2
4, 2, 3, 1
Как получить доступ к закрытым членам класса из других объектов?
Если записано
B b; b.f();
2
2 1
1 2
1
Как можно определить унарную операцию?
Укажите правильное объявление шаблона функции, если в программе производится вызов double х = zero<double>();
template <class TT> TT zero() { return 0;}
template TT zero() { return 0;}
template <class TT> TT zero { return 0;}
Что обозначает запись typedef void (*terminate_handler)();
?
void
typedef
Какой класс содержит средства управления вводом и выводом?:
iostream
ios
fstream
Если два класса имеют нечто общее, как лучше поступить?
Как правильно задать неизменяемый указатель?
const int* x=10;
int *const x =10;
const int const x = 10;
Перечислите, что характерно для оператора return
?
Верно ли такое объявление класса Name
?
Если записано
B b; A& a=b; a.f();
2 1
1 2
1
Чему будет равна переменная x
перед выходом из данной функции?
1
2
3
Какие шаблоны функций записаны неправильно?
template <class T> void f(T);
template <class T> void f(T*);
<template class T> T f(int);
template<int i void> f(int = i);
В чем смысл механизма исключительных ситуаций?
Какой тип не определен в стандарте языка С++?
double
string
char
float
long double
Какие манипуляторы указывают, в какой системе счисления должны выводиться числа?
ends
dec
oct
setw
hex
Как называются операторы,позволяющие организовать доступ ко всем частям объекта в строго определенной последовательности?
Может ли класс, которому принадлежит другой класс, переопределить виртуальные функции этого класса?
Перечислите принципы управления памятью
new
и delete
должны быть обязательно перегружены в классе new
должна быть достаточной для создания объекта Укажите неправильное объявление перечислимого типа?
enum avto {Lada, Ford, Toyota};
enum avto {Lada=1, Ford=2, Toyota=3};
enum avto {1, 2, 3};
Перечислите операторы выбора:
if
while
for
switch
Укажите результат выполнения следующего кода:
z=[16] x=[0]
"return x*factorial(x-1);"
функции "int factorial(int x)"
: вызов функции самой себя z=[16] x=[6]
"y = factorial(3);"
функции "int Func(int y)"
: попытка присвоить значение входному параметру Верно ли такое объявление класса?
В каком порядке вызываются конструкторы и деструкторы?
Какой из этих операторов сложения возвращает сумму по ссылке?
operator+();
operator++();
Какой будет результат следующего выражения?
6 7
5 10
Cколько параметров может принимать catch
Если имеется код int x; cin >> x;
и вводится "1.2
", то что будет в переменной x
?
1
2
1.2
Что верно по отношению к тестированию?
Каким образом можно избежать неоднозначности при делегировании?
Реализован ли в стандарте С++ "сборщик мусора"?
Как обратиться к элементу x
переменной v
, объявленной следующим образом:
v.x
x
v->x
Что будет напечатано в результате работы следующей программы?
1 2
1 3
2 3
Отметьте правильный прототип функции, использующий в качестве параметра многомерный массив int m[10][2]
:
void F(int m[][2]);
int F(int m[]);
void F(int Ar[][], int sz);
Что будет выведено на экран?
1
2
Какие из перечисленных операторов не следует реализовывать как внешние функции, а только как функции-члены класса:
=
()
==
+
->
Синтаксис объявления шаблона класса имеет вид:
template <список-параметров_шаблона> определение_класса
template (список-параметров_шаблона) определение_класса
<список-параметров_шаблона> template определение_класса
Что произойдет, если особая ситуация возникнет в конструкторе объекта?
Основные типы данных, наиболее приближенные к «аппаратной реализации»:
boolean
char
int
short
long
real
Какие файлы определяют интерфейс потоковой библиотеки?
iostream.h
stream.h
fstream.h
constream.h
В чем заключается самая типичная перестройка иерархии классов?
Что следует использовать для представления понятий?
К какому виду относится класс, объявленный так:
Что выведет на экран следующий код:
Какой будет результат выполнения следующей программы?
18
15
21
Объявлен класс class A { public: int a,b,c;}; A obj;
Как обратиться к переменной с
?
obj.c
obj->a->b->c
obj->c
obj->a.c
monstr
- базовый класс, daemon
- производный):
p->draw(1, 1, 1, 1);
будет вызван
monstr
daemon
monstr
Класс Point
имеет данные-члены int x,y
. Какая из следующих операторных функций содержит ошибку?
Point& operator--(Point& a) { a.x--;a.y--; return a;}
Point Point::operator+(Point& a)
{ Point b; b.x=x+a.x; b.y=y+a.y; return b;};
double Point::operator() {return sqrt(x*x+y*y);}
Какие два основных вида шаблонов существуют в языке С++?
Укажите поток вывода сообщений об ошибках:
cout
cerr
throw
Объявлен класс A и объект d:
с
?
d.c;
d.get_c();
d->get_c();
d->c;
Что будет выведено на экран в результате работы следующего фрагмента программы:
1.234568e+02
123.457
123.456789
Что из перечисленного ниже облегчается, если программа имеет ясную внутреннюю структуру?
Перечислите верные высказывания:
Какую функцию можно использовать для определения, является ли заданный класс базовым для другого класса?
const char* name()const;
int has_base(const Type_info*, int direct=0) const;
int same(const Type_info* p) const;
int can_cast(const Type_info* p) const;
Можно ли определить длину строки с помощью функции?
Что произойдет при выполнении кода:
func
выполнится 5 раз func
не выполнится ни разу func
будет выполняться бесконечно func
выполнится 1 раз Что описывает оператор typedef void (*ptr)(char *);
char *
и не возвращает значения Определены классы:
cout << obj.getx() << endl
cout << obj.gety() << endl
cout << obj.getz() << endl
Выберите верное утверждение:
Имя_класса* operator->()
Имя_класса* operator->
Отметьте все неверные утверждения:
Template
Исключительная ситуация в деструкторе
try catch
В каком случае определение класса приведет к ошибке компиляции:
Какой из следующих прототипов следует использовать для доопределения оператора << для вывода пользовательских типов?
имя_пользовательского_типа operator << (ostream&)
ostream& operator<< (ostream&, имя_пользовательского_типа)
ostream& operator<< (имя_пользовательского_типа)
Какие действия предполагают определения интерфейсов классов?
Какое преимущество дает статическая типизация?
Каково назначение управляющих классов?
Что будет напечатано в результате выполнения фрагмента программы?
abcd1234
d1234
1234
abcd
Оператором цикла с постусловием является оператор:
for (инициализация цикла; выражение-условие; список_выражений) тело_цикла
while (выражение-условие) тело_цикла;
do тело_цикла while (выражение-условие)
Что будет напечатано в результате работы следующей программы?
4 8 16
2 3 4
4 8 4
Выберите правильную синтаксическую конструкцию наследования:
class имя_класса : список_базовых_классов { список_элементов класса}
class имя_класса : : список_базовых_классов { список_элементов класса}
class имя_класса ( список_базовых_классов ){ список_элементов класса}
class имя_класса [ список_базовых_классов] { список_элементов класса}
В чем ошибка при таком определении бинарного оператора: String operator+()
?
Определен шаблон и описаны объекты класса:
x1=x2
x2=x3
x1=x3
x2=x4
Какой результат будет у следующего выражения?
Exception
Exception 9 6
Exception 10 6
10 6
Член класса, объявленный с атрибутом доступа private
:
Что выведет на экран фрагмент программы double a = 17.135; cout << '(' << setw(8) << setfill('#') << a <<')';
?
(##17.135)
(17.135##)
((##17.135#######))
Какие из перечисленных ниже приемов могут служить способами экспериментирования?
Интерфейс определен следующим образом:
X::f
неизвестна длина строки Y
и Z
используются так, что их определения должны быть известны X::g
имеет низкий уровень абстракции Может ли быть освобождена память, выделенная объектам класса Х
с помощью класса Рool
?
delete
Pool
extern float pi;
struct st;
float x2(float x) { return x*x; }
struct{char a; int b;} my_str;
Выберите корректные части кода
1 и 2
2 и 3
1 и 3
В каких случаях произойдет ошибка компиляции?
Объявляется класс T
. Какой из следующих прототипов конструкторов является конструктором копирования?
T();
T(int, int);
T(const T&);
Определены классы:
С
А
В
Какие операторы языка С++ нельзя перегружать?
/
::
+
Выберите вариант правильного объявления шаблона класса A
:
Какая строка данного кода производит возврат элемента по указателю?
Арифметические операции языка С++:
Какой файл необходимо включить, если предполагается использование манипуляторов с параметрами?
iostream.h
stdio.h
iomanip.h
Какие бывают иерархии?
Может ли конструктор быть статическим?
К какому виду относится класс, объявленный так:
Отметьте правильное определение константы:
const int DOZEN = 12;
const double;
double COFF = (const)1.2e10;
Какое значение может иметь параметр argc
функции main
?
0
Какие из следующих прототипов функций содержат ошибки?
void display(int x=1, char *s=”Hello!”);
void func(...);
void write(int a, b, c);
double[2] sum( int *, int );
float func(float, int ...);
int ff1(int x* =3);
Какие служебные слова предназначены для указания видимости членов класса?
public
private
protected
void
const
static
Что обозначает следующая запись?
Сколько операндов должна иметь операторная функция бинарного оператора, объявленная как дружественная функция?
0
1
2
3
Что обозначает запись typedef basic_filebuf<char> filebuf;?
basic_filebuf
для типа данных char
char
char
Могут ли блоки try-catch
быть вложенными?
Инкапсуляция - это:
Где содержатся операции ввода из файла и вывода в файл?
iostream.h
stdio.h
fstream.h
iomanip.h
Как называется выделение существенных характеристик объекта, отличающих его от других видов объектов?
Х
описанием Х*
вместо Х&
?Может ли виртуальная функция быть встроенной?
inline
Какие из записей соответствуют правильным обозначениям отрицательных констант?
Каким будет результат работы следующей программы?
10
19
18
23
Выберите верные утверждения:
inline
), то компилятор подставляет в точку вызова ее тело return
f1
является дружественной по отношению к классу hero
f2
является дружественной по отношению к классу hero
f1
не является дружественной по отношению к классу hero
f2
не является дружественной по отношению к классу hero
Выберете корректные объявления
Есть ли ошибка в таком объявлении класса:
template
Имеются следующие обработчики ошибок:
b
, какой обработчик будет вызван?
catch (b){код 2}
catch (...){код 5}
catch (b){код 2}
и catch (...){код 5}
Парадигма модульного программирования заключается в следующем:
В файлы f1.txt
и f2.txt
записана строка символов 1234. Что будет выведено на экран в результате работы следующего фрагмента программы:
3412
1232
1233
Какая функция должна быть в классе обязательно?
Каким может быть наследование?
Может ли статическая функция-член быть виртуальной?
Выберите правильные записи символьных констант:
'1'
0xuf34
'f'
Перечислите операторы сравнения:
=
==
<<
<
>>
&
!=
Как использовать библиотеку math.a
в своей программе myprog.c
?
$ CC myprog.c math.a
include
Объявлены классы:
c->a = 7;
A* p = (A*)c;
d->a = 7;
A* p = d;
Может ли конструктор быть виртуальным?
Выберите верные утверждения:
Выберите правильный вариант программного кода:
Какая функция вызывается для нормального завершения программы?
terminate()
abort()
exit()
Что дает использование обработки особых ситуации?
Какой результат будет у следующего выражения?
C:\tst.txt
" с содержимым "1 11 2 file
" Ошибка создания файла
" C:\Tst
" с содержимым "1 11 2 file
" Что должно стать результатом концептуализации создаваемой системы?
Какой тип наследования употребляется чаще всего?
private
public
protected
Можно ли определить оператор new
, принимающим несколько параметров?
Hi
Hie
He
Какой будет результат выполнения следующей программы?
5
0
Какой синтаксис применяется для использования директивы include
?
# include <header_name>
# include "header_name"
# include 'header_name'
# include header_name
Какой будет результат следующей программы?
15
10
25
Что будет напечатано в результате работы программы:
A A B A A B
A В B A В B
А А А В В В
Объявлен класс:
Point Pt(1,2,3,"MyPt");
cout<<Pt->GetX()<<'\t'<<Pt->GetY()<<'\t'<<Pt->GetZ()<<endl;
cout<<Pt->x<<'\t'<<Pt->y<<'\t'<<Pt->z<<endl;
cout<<Pt->s<<endl;
Какой будет результат следующего выражения?
13
18
17
Какой оператор обрабатывает исключительную ситуацию?
catch
try
throw
Класс А
определен следующим образом:
A
:
A a[100];
A a = (A)12;
A a = new A();