Модераторы: Daevaorn
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Конструкторы, и ихнии заморочки 
:(
    Опции темы
Royan
  Дата 1.4.2003, 07:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Dreamer
***


Профиль
Группа: Участник Клуба
Сообщений: 1708
Регистрация: 14.9.2002
Где: Лондон

Репутация: нет
Всего: 15



Всем привет! я чувствую, что под ночь плохо соображаю, но может вы мне напомните возможно ли как бы "отключить" (то есть чтобы код внутри него не выполнялся) базового класса, когда создается объект производного от него класса. Может можно явно выхвать переопределенный конструтор базового класса?......


--------------------
Открыта вакансия Junior Java Developer'а в нашем лондонском офисе, подробнее можно узнать здесь
PM MAIL MSN   Вверх
Paradox
Дата 1.4.2003, 16:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник
Сообщений: 1135
Регистрация: 18.11.2002
Где: Россия

Репутация: нет
Всего: 1



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

При создании объекта производного класса автоматически вызывается конструктор базового класса. После завершения конструирования объекта конструктор базового класса становится недоступным. Конструктор базового класса вызывается только компилятором в момент создания объекта производного класса. Конструктор, в отличии от других унаследованных функций, вызвать явно нельзя.

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


--------------------
---
PM MAIL WWW   Вверх
Step
Дата 1.4.2003, 17:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 5151
Регистрация: 26.9.2002
Где: дурдом.UA

Репутация: 5
Всего: 25



class a:public b
{
a(); construktor
}


реализация конструктора по умолчанию класса а
a::a():b()
{
}

Цитата
:b()
удали, может и получиться то что ты хочеш


--------------------
- Дурак учится на своих ошибках, умный на чужих.
 - умные учатся у дураков
PM MAIL ICQ   Вверх
Paradox
Дата 1.4.2003, 17:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник
Сообщений: 1135
Регистрация: 18.11.2002
Где: Россия

Репутация: нет
Всего: 1



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


--------------------
---
PM MAIL WWW   Вверх
Step
Дата 1.4.2003, 17:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 5151
Регистрация: 26.9.2002
Где: дурдом.UA

Репутация: 5
Всего: 25



Paradox извини я книг не читаю


--------------------
- Дурак учится на своих ошибках, умный на чужих.
 - умные учатся у дураков
PM MAIL ICQ   Вверх
Royan
Дата 2.4.2003, 19:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Dreamer
***


Профиль
Группа: Участник Клуба
Сообщений: 1708
Регистрация: 14.9.2002
Где: Лондон

Репутация: нет
Всего: 15



Ход решения задачи понятен. Спасибо!


--------------------
Открыта вакансия Junior Java Developer'а в нашем лондонском офисе, подробнее можно узнать здесь
PM MAIL MSN   Вверх
Vyacheslav
Дата 2.4.2003, 20:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 2124
Регистрация: 25.3.2002
Где: Москва

Репутация: 9
Всего: 59



Цитата(Step @ 1.4.2003, 17:46)
Paradox извини я книг не читаю

Ну а хотя бы стандарт по C++?



--------------------
С уважением, Вячеслав Ермолаев
PM MAIL WWW ICQ   Вверх
Step
Дата 2.4.2003, 20:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 5151
Регистрация: 26.9.2002
Где: дурдом.UA

Репутация: 5
Всего: 25



Цитата
Ну а хотя бы стандарт по C++?
неа


--------------------
- Дурак учится на своих ошибках, умный на чужих.
 - умные учатся у дураков
PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++:Общие вопросы"
Earnest Daevaorn

Добро пожаловать!

  • Черновик стандарта C++ (за октябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика(4.4мб).
  • Черновик стандарта C (за сентябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика (3.4мб).
  • Прежде чем задать вопрос, прочтите это и/или это!
  • Здесь хранится весь мировой запас ссылок на документы, связанные с C++ :)
  • Не брезгуйте пользоваться тегами [code=cpp][/code].
  • Пожалуйста, не просите написать за вас программы в этом разделе - для этого существует "Центр Помощи".
  • C++ FAQ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0921 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.