Форум программистов, компьютерный форум CyberForum.ru

Pointers and dynamic arrays - C++

Восстановить пароль Регистрация
 
QWERY_2012
5 / 5 / 2
Регистрация: 09.09.2012
Сообщений: 227
06.02.2013, 21:05     Pointers and dynamic arrays #1
Изучаю тему указатели и динамичесские массивы в классах.
Хотелось бы быть уверенным в следующих ответах:

1) Когда класс использует динамическую память, какая member функция должна ,быть обеспечена классом:
a) = оператор;
b) copy конструктор;
c) деструктор;
d) всё выше перечисленное.

2) Согласно след. утверждению:
int i = 42;
int j = 80;
int *p1;
int *p2;
p1 = &i;
p2 = &j;
*p1 = *p2;
cout << i << j << endl;

Какие числа будут напечатаны на выходе?
a) 42 потом снова 42;
b) 42 затем 80;
c) 80 затем 42;
d) 80 потом снова 80.

3) Что будет напечатано согласно след. утверждениям:
int i = 1;
int k = 2;
int *p1;
int *p2;
p1 = &i;
p2 = &k;
p1 = p2;
*p1 = 3;
*p2 = 4;
cout << i;

a) 1;
b) 2;
c) 3;
d) 4.

4) Когда выделен массив объектов, какой конструктор используется чтобы инициализировать все объекты массива?
a) автоматический copy конструктор;
b) Конструктор определенный в декларации;
c) Default Конструктор класса объектов множества;
d) ни чего из выше перечисленного.

5) Где находятся динамические переменный прежде чем происходит их ассигнование(размещение)?
a) в сегменте кода;
b) в сегменте данных;
c) в heap (в куче);
в) в run-time stack.

6) Когда параметр указателя p должен быть справочным(reference) параметром?
a) Когда функции необходимо сделать фактический аргумент указателя указывающим на что-то другое.
b) Когда функция делает p указывающим на что-то другое, но НЕ хочет, чтобы изменение затронуло фактический аргумент указателя.
c) Когда функция изменяет *p, и это изменение должно затронуть фактический объект, на который указывают.
d) Когда функция изменяет *p, и изменение не должно затронуть фактический объект, на который указывают.
е) Когда pointer указывает на большой объект.

7) Существует небольшая функция, которая использует динамический класс bag
void quiz( )
{
bag::size_type i; // Line 1
bag b; // Line 2
b.insert(42); // Line 3
i = b.size( ); // Line 4
cout << i; // Line 5
}

Во время вызова к этой функции, когда bag's динамическое множество ассигновано(распределено)?
a) в течении выполнения Line 2;
b) в течении выполнения Line 3;
c) после line 4 и перед Line 5;
d) после Line 5.

8) Существует небольшая функция, которая использует динамический класс bag
void quiz( )
{
bag::size_type i; // Line 1
bag b; // Line 2
b.insert(42); // Line 3
i = b.size( ); // Line 4
cout << i; // Line 5
}

Во время вызова к этой функции, когда bag's динамическое множество returned to the heap?
a) в течении выполнения Line 2;
b) в течении выполнения Line 3;
c) после line 4 и перед Line 5;
d) после Line 5.

9) Предположим, что у нового foo класса естьprotype для перегруженного оператора назначения:

void operator =(const foo& source);

В операторе присваивания a= b, каков будет фактический аргумент для parameter source?
a) a;
b) b.


10) Предположим, что Вы осуществляете оператор назначения, copy конструктора и оператор + =. Для какой из этих функций "self-application" (где аргумент совпадает с объектом, который активирует эту функцию), возможно?
a) У только одной из трех функций есть возможное self-application;
b) The assignment operator и the copy construtor имеют self-application;
с) The assignment operator и оператор += имеют self-application;
d) the copy construtor и оператор += имеют self-application;
e) Все три функции имеют self-application.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
06.02.2013, 21:05     Pointers and dynamic arrays
Посмотрите здесь:

C++ C++: pointers, clases
C++ указатели (Pointers)
Opiat k temie DYNAMIC ARRAYS in C C++
C++ Smart Pointers: что такое и как с этим работать?
C++ Pointers
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
go
Эксперт C++
3582 / 1362 / 128
Регистрация: 16.04.2009
Сообщений: 4,528
06.02.2013, 21:09     Pointers and dynamic arrays #2
1 d
2 d
3 a
QWERY_2012
5 / 5 / 2
Регистрация: 09.09.2012
Сообщений: 227
07.02.2013, 06:47  [ТС]     Pointers and dynamic arrays #3
Спасибо!!!

Но как на счёт остальных?
silent_1991
Эксперт C++
4938 / 3014 / 149
Регистрация: 11.11.2009
Сообщений: 7,024
Завершенные тесты: 1
11.02.2013, 13:25     Pointers and dynamic arrays #4
1) d
2) d
3) a
4) c
5) Не понял, что имеется ввиду. Пока их не разместили - они нигде не находятся, есть только указатели на них (в большинстве случаев), которые размещаются там, где захотел программист - в стеке или в куче (если память под сами указатели тоже выделена динамически).
6) Перевод кривой, непонятно, что имелось ввиду
7) Если я правильно понял вопрос (опять перевод кривой), то зависит от реализации. Либо a, либо b
8) d
9) b
10) c
На будущее, выполняйте перевод более точно. Официальным языком форума является русский язык, а не тарабарский. А лучше к переводу (хорошо выполненному) прикладывайте ещё и оригинал (в теге spoiler).
go
11.02.2013, 13:34
  #5

Не по теме:

Цитата Сообщение от silent_1991 Посмотреть сообщение
10) c
Как ты 10-ый вопрос понял?

silent_1991
11.02.2013, 14:21     Pointers and dynamic arrays
  #6

Не по теме:

go, пришлось сильно напрячься Имелось ввиду x = x, x += x и т.д.

Yandex
Объявления
11.02.2013, 14:21     Pointers and dynamic arrays
Ответ Создать тему
Опции темы

Текущее время: 04:51. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru