![]() |
|
Модераторы: bsa |
![]()
|
|
| Новичек89 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 3 Регистрация: 28.6.2009 Репутация: нет Всего: нет |
Здравствуйте, помогите пожалуйста!!! Мне нужна помощь, и посоветовались обратится к Вам!
Вообщем такая ситуация... Наш преподаватель по "технологии программирования (СИ++)" требует уже 2й год от студентов ответ, на вопрос "Чем отличается Конструктор от Деструктора?" Ну и при этом нужно назвать их свойства. Мы знаем, и говорим ему : 1) В классе может быть не один конструктор, а деструктор только один. ; 2) Конструктор может иметь аргументы, а деструктор нет; 3) Деструктор не имеет параметров, а конструктору они могут передаваться; 4) Конструктор не может быть виртуальным, а диструктор виртуальный; 5) Они оба называются так же как и класс; 6) Конструктор может быть перегружен, деструктор - нет; 6)Конструктор не возвращает значение, не может быть объявлен, как const,volatile,static; не наследуется, может быть явно/не явно вызван; может быть конструктор копирования; 7) Конструктор выполняется при инициализации объекта, деструктор - после работы программы. 8) Оба могут быть по умолчанию; 9) Для конструктора не используется тип void Преподаватель говорит, что вы все не называете еще одного отличия. И вот он от нас требует этого отличия, "хоть ты тресни..." =((( Смотрели книги, искали в инете - без рез-та... Помогите, подскажите пожалуйста!!! Этот ответ поможет поскорее сдать этот экзамен... Очень надеюсь на помощь знающих людей !!! Конечно дело не в тильде. ... Спасибо заранее!!! |
|||
|
||||
| hsilgos |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 64 Регистрация: 26.4.2009 Репутация: 1 Всего: 2 |
деструктор тоже явно можно вызвать |
|||
|
||||
| kemiisto |
|
|||
![]() Дикий Кот. =^.^= ![]() ![]() ![]() ![]() Награды: 1 Профиль Группа: Участник Клуба Сообщений: 3292 Регистрация: 29.7.2007 Репутация: 5 Всего: 160 |
Новичек89, списочек, конечно, бредовый. Как, впрочем, и вопрос. 5 "отличие" убило. Ну... даже не знаю... Скажите, что-нить типа, конструктор выделяет память под объект, деструктор - освобождает.
-------------------- |
|||
|
||||
| hsilgos |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 64 Регистрация: 26.4.2009 Репутация: 1 Всего: 2 |
Есть еще как бэ не отличие, а, скорее, общее правило: из конструктора можно кидать исключение - из деструктора строго не реккомендуется (хотя тоже можно)
Добавлено через 2 минуты и 23 секунды
Этим занимается не конструктор/деструктор. Скорее конструктор - конструирует объект, инициализирует. Деструктор - освобождает ресурсы |
|||
|
||||
| EvilsInterrupt |
|
|||
|
Executables research ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1019 Регистрация: 14.7.2007 Где: Железнодорожный, МО, Россия Репутация: нет Всего: 9 |
Ну и в чем сложность ? Правильно требует!
Конструктор это создатель Деструктор это разрушитель Т.е. самое главное что один СОЗДАЕТ, а другой РАЗРУШАЕТ. А все остальное,это уже технические детали. Они существенны, но для понимания сути важно именно это отличие! Грамотный у вас препод, побольше таких бы! ;) Незачем по верхушкам скакать, надо в корне знать что и как. Зная суть вещей, можно мыслить более широко и следовательно писать более правильный код и знать где примерно искать баги, если таковы видешь. |
|||
|
||||
| kemiisto |
|
|||
![]() Дикий Кот. =^.^= ![]() ![]() ![]() ![]() Награды: 1 Профиль Группа: Участник Клуба Сообщений: 3292 Регистрация: 29.7.2007 Репутация: 5 Всего: 160 |
hsilgos, ой, я Вас умоляю. Давайте не будем тут терминологическую демагогия разводить. Я ещё раз повторяю, дан список такого шедеврального бреда, что можно добавить всё что душе угодно! Никак не отойду! -------------------- |
|||
|
||||
| bsa |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9185 Регистрация: 6.4.2006 Где: Москва, Россия Репутация: 85 Всего: 196 |
2 и 3 - одно и тоже. Только другими словами и в другой последовательности
4. Деструктор может быть виртуальным. 5. не совсем, у деструктора перед названием идет тильда. 6. Это скорее тоже самое, что и 2, и 3 7. Деструктор выполняется при уничтожении экземпляра класса, а конструктор - при создании. 8. "деструктор по умолчанию"? Это что-то новенькое. Потому что "конструктор по умолчанию" - это конструктор, который можно вызвать без указания параметров. 9. В случае наследования конструкторы вызываются от базового к наследнику, а деструкторы от наследника к базовому. Это сообщение отредактировал(а) bsa - 29.6.2009, 00:47 |
|||
|
||||
| UnrealMan |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 722 Регистрация: 30.3.2006 Репутация: 5 Всего: 32 |
||||
|
||||
| hsilgos |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 64 Регистрация: 26.4.2009 Репутация: 1 Всего: 2 |
Не пытался, просто решил, что Вы об этом не знаете Список бредовый, а препод явно хочет услышать про создание/уничтожение, согласен... |
|||
|
||||
| Новичек89 |
|
||||||
|
Новичок Профиль Группа: Участник Сообщений: 3 Регистрация: 28.6.2009 Репутация: нет Всего: нет |
Спасибо, за поправки - учтется! ;)
Ну это говорилось ему при определении этих двух функций!
Я написала, что при их отличиях, мы должны назвать их свойства и характеристики.
Объясните, пожалуйста, что в данном случаи "Исключение" - ? И "Кидать исключение" - ??? По сути, никто так, ничего нового и не назвал... Вопрос остается - Что нужно этому Преподавателю ??? !!! |
||||||
|
|||||||
| Dmi3ev |
|
||||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1698 Регистрация: 28.11.2007 Репутация: 13 Всего: 41 |
Похоже он сам не знает, раз второй год от вас это хочет
Ну к твоим отличиям хз че прибавить -------------------- |
||||
|
|||||
| EvilsInterrupt |
|
|||
|
Executables research ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1019 Регистрация: 14.7.2007 Где: Железнодорожный, МО, Россия Репутация: нет Всего: 9 |
>>Похоже он сам не знает, раз второй год от вас это хочет Если бы знал, сам бы вам рассказал
У меня в КГТУ им. Туполева Суздальцев был, это препод еще тот. За "однерку" вместо "еденицы" дальше уже не слушал и чел отправлялся учить дальше. Меж прочем, правильно делал, если каждому позволить на преведовском езыге говорить, то это уже хз че получится. Мы технари, а у нас терминология должна быть одна и таже. Говоря о конструкторе, мы должны четко понимать о чем идет речь. Что это не простая ф-ция которая может быть перегружена, и что это не просто ф-ция создающая объект класса а-ля CreateMyObjct(my_objct * obj); , а совершенное четкое понятие: "Конструктор это спец.ф-ция класса входящая в его состав и служащая для создания объекта этого класса". Все, после этих слов, у человека если и появятся вопросы, то вполне конкретные и по существу! Это сообщение отредактировал(а) EvilsInterrupt - 29.6.2009, 01:56 |
|||
|
||||
| Новичек89 |
|
||||
|
Новичок Профиль Группа: Участник Сообщений: 3 Регистрация: 28.6.2009 Репутация: нет Всего: нет |
Это " фигнюшечка " называется ТИЛЬДА. И о ней, я тоже писала... Мы вот тоже думаем уже, что мол, мож над нами стебется ??? ... Хотя я уже битый час читаю инет по этой тме...Что то новенькое для себя нахожу, остается в этом разобраться, хотя бы на уровне ответа... Благо прогить возле него он не требует...Ведь это процесс творческий - и под напором и взглядом "надзиратель" неосуществим =((( Мне кое где, ради смеха (Я так полагаю) сказали, ответить ему, что отличие в их Названии... Завтра, так и отвечу...Если он так и будет говорить "Правда, но не То", "Я Вас понял, но Вы не правы", "Студент, это не то что я жду" ... и т.д. ((( Добавлено через 4 минуты и 47 секунд
КОШМАР!!! Благо у нас не так... Но тоже еще тот фрукт!!! Вообщем просто ... аут. когда я с 1го раза не сдала, поняла что единственный способ получить это "удв" - найти ответ на этот вопрос. Так, как он сказал - "Кто ответит, это конечно не зачет, и не + пол бал (!ДАЖЕ!), Я буду относится к этому студенту по-другому" ... А как "по-другому" - это загадка... И все таки верю,что кто-нить напишет что-нить ДЕЛЬНОЕ!!! |
||||
|
|||||
![]()
|
| Правила форума "C/C++: Для новичков" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, bsa. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Для новичков | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |