![]() |
|
Модераторы: bsa |
![]()
|
|
| aspirin2003 |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 111 Регистрация: 18.3.2007 Где: Саратов Репутация: нет Всего: нет |
Уже в нескольких примерах видел такую вот конструкцию - зачем то после инклудов те же самые классы еще и и описывают вот так:
Вопрос - зачем так делают? |
|||
|
||||
| Annihilator |
|
||||
![]() bytegrinder ![]() ![]() Профиль Группа: Участник Сообщений: 493 Регистрация: 21.11.2006 Где: Омск Репутация: 1 Всего: 3 |
Надо смотреть по коду. Могу предположить, что то что ты видел, это классы, объявляющиеся для так называемого опережающего объявления. Допустим
Т.е. объявляется функция-друг для обоих классов. Но по-началу, о втором классе ничего не известно, поэтому надо написать некий прототип его:
Это сообщение отредактировал(а) Annihilator - 21.8.2008, 15:01 -------------------- Если вы не можете сделать хоpошyю пpогpаммy, сделайте, чтобы она по кpайней меpе выглядела хоpошо |
||||
|
|||||
| Djinn |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 250 Регистрация: 18.5.2007 Репутация: нет Всего: 1 |
Annihilator, Но ведь классы в библиотеках обьявлены раньше этих обьявлений...
сначала обьявление в инклудах с описанием, потом опять же обьявление их... зачем так делать ? о_О толку ж ноль... |
|||
|
||||
| Annihilator |
|
|||
![]() bytegrinder ![]() ![]() Профиль Группа: Участник Сообщений: 493 Регистрация: 21.11.2006 Где: Омск Репутация: 1 Всего: 3 |
а можно ссылку на эти примеры
-------------------- Если вы не можете сделать хоpошyю пpогpаммy, сделайте, чтобы она по кpайней меpе выглядела хоpошо |
|||
|
||||
| bsa |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9185 Регистрация: 6.4.2006 Где: Москва, Россия Репутация: 85 Всего: 196 |
aspirin2003, возможно, хотели сделать так:
Но в какой-то момент, возникла необходимость использовать не указатель на объект, а сам объект, и пришлось подключать заголовок... Конечно, не исключен вариант, когда писал кто-то неопытный, не думая копировал все, что есть в примерах... |
|||
|
||||
| aspirin2003 |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 111 Регистрация: 18.3.2007 Где: Саратов Репутация: нет Всего: нет |
Пример из Qt Examples & Demos, называется Secure Socket Client
|
|||
|
||||
| Djinn |
|
||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 250 Регистрация: 18.5.2007 Репутация: нет Всего: 1 |
Я немного не понял, как это не подключили заголовки с классом, но обьявили его ? Это сообщение отредактировал(а) Djinn - 21.8.2008, 16:30 |
||||
|
|||||
| bsa |
|
||||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9185 Регистрация: 6.4.2006 Где: Москва, Россия Репутация: 85 Всего: 196 |
Так. Срочно читать книжку по С++ (можно и по Си) для начинающих. когда ты делаешь
|
||||
|
|||||
| Djinn |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 250 Регистрация: 18.5.2007 Репутация: нет Всего: 1 |
bsa, это я знал
|
|||
|
||||
| Sartorius |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1568 Регистрация: 18.7.2006 Где: Ivory tower Репутация: 2 Всего: 37 |
ИМХО в демонстрационных целях
Второй вариант проект генерился из RationalRose она некоторые зависимости раскрывает как упреждающее описание, а человек потом соответственно инклуды добавил Это сообщение отредактировал(а) Sartorius - 21.8.2008, 17:23 |
|||
|
||||
| Djinn |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 250 Регистрация: 18.5.2007 Репутация: нет Всего: 1 |
||||
|
||||
| bsa |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9185 Регистрация: 6.4.2006 Где: Москва, Россия Репутация: 85 Всего: 196 |
Я не вижу никакого бреда. Ну добавил он инклюды. А предопределения убрать забыл. Это не криминал... |
|||
|
||||
| Djinn |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 250 Регистрация: 18.5.2007 Репутация: нет Всего: 1 |
||||
|
||||
| bsa |
|
||||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9185 Регистрация: 6.4.2006 Где: Москва, Россия Репутация: 85 Всего: 196 |
Не совсем так. Далеко не всегда коду, использующему подобный заголовок, могут понадобиться интерфейсы предопределенных в нем классов. Типичный пример:
|
||||
|
|||||
| Djinn |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 250 Регистрация: 18.5.2007 Репутация: нет Всего: 1 |
bsa, cпасибо, вроде понятно...
Это сообщение отредактировал(а) Djinn - 21.8.2008, 21:48 |
|||
|
||||
![]()
|
| Правила форума "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. |