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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 11, средняя оценка - 4.91
RinaLerrer
0 / 0 / 0
Регистрация: 27.02.2013
Сообщений: 4
#1

Тест по ООП - C++

21.06.2013, 21:47. Просмотров 1485. Ответов 16
Метки нет (Все метки)

Помогите, пожалуйста, с текстом по С++!!!
Тема 13. Создание объектов класса
13.1 Пусть описан класс
class ClassA {int a; public: ClassA(); ClassA(int ); };
Какое из следующих выражений противоречит синтаксису С++
a) ClassA В;
b) ClassA B=ClassA(2);
c) ClassA B(2);
d) ClassA В();
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.06.2013, 21:47     Тест по ООП
Посмотрите здесь:

ООП - C++
Подскажите статью или книгу где рассказывается про динамические списки (с указателями,ссылками,динамической памятью и классами знаком)

ООП - C++
Господа у меня возникло 2 вопроса по ООП т.к. только не давно начал его изучать . 1) Не как не могу понять для чего умные люди его...

ооп - C++
Нада книгу по ооп, такую что бы было все разжевано максимально. Так, что бы я за минимум времени и усилий разобрался.

ООП - C++
#pragma hdrstop #pragma argsused //#include "Student.hpp" //#include "Prof.hpp" //#include "Personne.hpp" #include <conio.h> ...

ООП - C++
помогите переделать программу в ООП, Создать класс, описывающий следующие понятие рабочий! фамилия,стаж,часовая зароботная плата,...

ООП - C++
1) Для класса символьной строки определить отношение лексикографического порядка, перегрузив с помощью дружественной функции операцию «<» ...

ООП - C++
проблема в классе квадрат- ниже код, я не прошу его переписывать, попробуйте кто то у себя запустите и будьте добры скажите почему там...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
TamaGOch
9 / 9 / 0
Регистрация: 11.12.2012
Сообщений: 152
21.06.2013, 21:49     Тест по ООП #2
b я так думаю...
a) тут конструктор по умолчанию
c) конструктор с int'ом
d) тоже конструктор по умолчанию
А т.к. варианта "против всех" нет, тогда b)
RinaLerrer
0 / 0 / 0
Регистрация: 27.02.2013
Сообщений: 4
21.06.2013, 21:53  [ТС]     Тест по ООП #3
А почему b?

Добавлено через 45 секунд
А, методом исключения...Спасибо!

Добавлено через 1 минуту
Просто не могу врубиться, чем ответ a) отличается от ответа d)...
I.M.
564 / 547 / 5
Регистрация: 16.12.2011
Сообщений: 1,389
21.06.2013, 21:55     Тест по ООП #4
Тут как бы ничего не противоречит синтаксису.
Но могу сказать, что 4 - это не создание объекта, а описание сигнатуры функции
Кудаив
329 / 406 / 24
Регистрация: 27.05.2012
Сообщений: 1,165
Завершенные тесты: 2
21.06.2013, 22:10     Тест по ООП #5
a) ClassA В; //создание объекта с помощью конструктора по умолчанию
b) ClassA B=ClassA(2); //создание временного объекта вызовом ClassA(2), инициализация объекта b конструктором копирования
c) ClassA B(2);//вызов конструктора с интовым параметром
d) ClassA В();//прототип функции, не тоже самое что ClassA *B = new ClassA();
RinaLerrer
0 / 0 / 0
Регистрация: 27.02.2013
Сообщений: 4
21.06.2013, 22:16  [ТС]     Тест по ООП #6
Цитата Сообщение от Кудаив Посмотреть сообщение
a) ClassA В; //создание объекта с помощью конструктора по умолчанию
b) ClassA B=ClassA(2); //создание временного объекта вызовом ClassA(2), инициализация объекта b конструктором копирования
c) ClassA B(2);//вызов конструктора с интовым параметром
d) ClassA В();//прототип функции, не тоже самое что ClassA *B = new ClassA();
так неверный вариант какой будет?
kventin_zhuk
БНТУ ФИТР
215 / 155 / 15
Регистрация: 26.12.2012
Сообщений: 382
21.06.2013, 22:16     Тест по ООП #7
@Кудаив, "b) ClassA B=ClassA(2); //создание временного объекта вызовом ClassA(2), инициализация объекта b конструктором копирования"


А где здесь вызывается конструктор копирования? в конструктор копировани объект класса же передают.
Кудаив
329 / 406 / 24
Регистрация: 27.05.2012
Сообщений: 1,165
Завершенные тесты: 2
21.06.2013, 22:29     Тест по ООП #8
@RinaLerrer, если отвечать на вопрос
Цитата Сообщение от RinaLerrer Посмотреть сообщение
Какое из следующих выражений противоречит
то ответ будет - никакая, попытавшись создать объект следующим образом
Цитата Сообщение от RinaLerrer Посмотреть сообщение
d) ClassA В();
и опытаться дальше использовать объект B - будет ошибка компиляции

Добавлено через 1 минуту
Цитата Сообщение от kventin_zhuk Посмотреть сообщение
А где здесь вызывается конструктор копирования? в конструктор копировани объект класса же передают.
ClassA B=ClassA(2);

тоже самое что

СlassA tmp(2);
ClassA B(tmp);
go
Эксперт C++
3586 / 1366 / 128
Регистрация: 16.04.2009
Сообщений: 4,528
21.06.2013, 23:05     Тест по ООП #9
Цитата Сообщение от RinaLerrer Посмотреть сообщение
Какое из следующих выражений противоречит синтаксису С++
Ответ: никакое.
Но! Следует обратить внимание на d.
Цитата Сообщение от RinaLerrer Посмотреть сообщение
Тема 13. Создание объектов класса
С этим оно никак не коррелируется.

Добавлено через 26 секунд
Цитата Сообщение от go Посмотреть сообщение
С этим оно никак не коррелируется.
Хотя, прототип функции, которая вернет временный объект.

Добавлено через 8 минут
Цитата Сообщение от Кудаив Посмотреть сообщение
b) ClassA B=ClassA(2); //создание временного объекта вызовом ClassA(2), инициализация объекта b конструктором копирования
Думаете? http://ideone.com/5qN1Ln
Кудаив
329 / 406 / 24
Регистрация: 27.05.2012
Сообщений: 1,165
Завершенные тесты: 2
22.06.2013, 10:15     Тест по ООП #10
Цитата Сообщение от go Посмотреть сообщение
Думаете?
вот черт! это же явный вызов конструктора! пардон - глюкануло

Добавлено через 3 минуты
@go, благодарю!
Schizorb
508 / 460 / 16
Регистрация: 07.04.2012
Сообщений: 865
Записей в блоге: 1
Завершенные тесты: 1
22.06.2013, 15:09     Тест по ООП #11
Цитата Сообщение от go Посмотреть сообщение
b) ClassA B=ClassA(2); //создание временного объекта вызовом ClassA(2), инициализация объекта b конструктором копирования
По идее да. Но тут, если не ошибаюсь, это copy constructor elision, то есть оптимизация, чтобы лишний конструктор не вызывался.
Jupiter
Каратель
Эксперт С++
6551 / 3971 / 226
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
Завершенные тесты: 2
22.06.2013, 16:07     Тест по ООП #12
Цитата Сообщение от go Посмотреть сообщение
Думаете? http://ideone.com/5qN1Ln
-fno-elide-constructors
RinaLerrer
0 / 0 / 0
Регистрация: 27.02.2013
Сообщений: 4
22.06.2013, 17:41  [ТС]     Тест по ООП #13
Тема 1. Класс string
1.1 Пусть созданы объекты класса string s1 и s2. Для проверки равенства строк s1 и s2 следует использовать следующее выражение ____________________

А вот здесь ответ: s1==s2, да?
go
Эксперт C++
3586 / 1366 / 128
Регистрация: 16.04.2009
Сообщений: 4,528
23.06.2013, 01:43     Тест по ООП #14
Цитата Сообщение от Jupiter Посмотреть сообщение
-fno-elide-constructors
И? Стандарт разрешает в некоторых случаях опускать вызов copy-constructor.
kventin_zhuk
БНТУ ФИТР
215 / 155 / 15
Регистрация: 26.12.2012
Сообщений: 382
23.06.2013, 01:49     Тест по ООП #15
@RinaLerrer, Да - там перегружен оператор сравнения.
Кудаив
329 / 406 / 24
Регистрация: 27.05.2012
Сообщений: 1,165
Завершенные тесты: 2
23.06.2013, 10:40     Тест по ООП #16
Цитата Сообщение от Schizorb Посмотреть сообщение
По идее да.
Цитата Сообщение от go Посмотреть сообщение
Стандарт разрешает в некоторых случаях опускать вызов copy-constructor.
то есть я был прав? но здесь оптимизация компилятора
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
23.06.2013, 11:17     Тест по ООП
Еще ссылки по теме:

ООП - C++
Всем привет! Если можно, не могли бы вы ответить на пару вопросов по ООП, а то что-то не могу понять. Вопросы: Зачем используются такие...

Книга по ООП - C++
Подскажите пожалуйста, что мне лучше начать читать, если я уже знаю азы С++ (синтаксис, циклы, массивы и т.д.), ознакомился с классами...

Махинации с ооп - C++
Добавлено через 36 минут PS и да еще такой вопрос Class ss { int a; ss(int countss) { /*тут создать массив из ss */

вопрос по ооп - C++
вот фаил с описанием класса. что такое #ifndef _STOCK1_H_ #define _STOCK1_H_ и #endif в 1,2 и последних строках соответсвенно. ...

ООП и контейнеры - C++
Здорова господа! От есть задачка: Напишите класс, производный от Container так, чтобы Vector из параграфа 16.2.1 мог использоваться в...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Jupiter
Каратель
Эксперт С++
6551 / 3971 / 226
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
Завершенные тесты: 2
23.06.2013, 11:17     Тест по ООП #17
Цитата Сообщение от go Посмотреть сообщение
И? Стандарт разрешает в некоторых случаях опускать вызов copy-constructor.
в общем случае деревянный компилятор ничего не вырежет
Yandex
Объявления
23.06.2013, 11:17     Тест по ООП
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru