![]() |
|
Модераторы: bsa |
![]()
|
|
| baldina |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3433 Регистрация: 5.12.2007 Где: Москва Репутация: 15 Всего: 101 |
ну ладно, ладно
определение с реализацией попутали. С++ запутанный язык |
|||
|
||||
| efpies |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 43 Регистрация: 20.6.2009 Где: СПб Репутация: нет Всего: нет |
Всем спасибо за подсказки.
Правда просто объявить не получится, если SomeClassUsing должен наследовать SomeClass. Нужно подключать SomeClass.h |
|||
|
||||
| mes |
|
|||
|
любитель ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7954 Регистрация: 14.1.2006 Репутация: 79 Всего: 250 |
для наследования нужно иметь полное определение наследуемого предка.. т.е. объявления недостаточно также полное определение нужно для создания/удаления, обращения к составляющим(членам), sizeof, и т.д.. объявления достаточно для использования ссылки или указателя.. |
|||
|
||||
| efpies |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 43 Регистрация: 20.6.2009 Где: СПб Репутация: нет Всего: нет |
Возникла такая проблема: некоторые методы считаются неописанными (unresolved external), их нужно описать именно в заголовочном файле. С чем это может быть связано?
|
|||
|
||||
| efpies |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 43 Регистрация: 20.6.2009 Где: СПб Репутация: нет Всего: нет |
UPD: с inline-функциями такая штука
|
|||
|
||||
| bsa |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9185 Регистрация: 6.4.2006 Где: Москва, Россия Репутация: 85 Всего: 196 |
efpies, почитай определение встраиваемых функций. Если лень, то в двух словах - тело inline функции должно быть в хидере.
|
|||
|
||||
| baldina |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3433 Регистрация: 5.12.2007 Где: Москва Репутация: 15 Всего: 101 |
||||
|
||||
| semibug |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 323 Регистрация: 27.3.2009 Репутация: нет Всего: нет |
Хочу обратить внимание на фундамент - заголовочные файлы всего лишь программистское соглашение, компилятор (канонический) ничего про них не знает.
Собственно компилирование начинается уже после обработки текста препроцессором, который поставит на место #include текст из соответствующего файла. Не важно какое у него будет расширение и имя, хоть cpp, хоть exe. Как то раз попалось даже такое извращение - вместо makefile с перечислением сырцов, компилировался один файл, содержащий #include всех остальных файлов проекта. Присоединяюсь к мнению гуру, один класс - один файл, и, imho, чем он меньше, тем лучше. |
|||
|
||||
| wildwolf |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 7 Регистрация: 24.1.2011 Репутация: нет Всего: нет |
я извиняюсь, ребят, помогите пожалуста..
сам изучал с++ .. а тут девушка с задачками подошла, не могу разобраться.. подскажите.. "Дано тело функции main(). Определить что будет выведено на экран в результате выполнения данного кода, и почему (дать пояснения к ответу). Код: int n=5; char * b="0"; printf("%u\n", open("f", O_RONLY)); close(fd); Примечание: Файла f не существует." и вторая- "Пояснить результаты работы программы #include<unistd.h> main(){ printf("один/n"); fork(); fork(); printf("два/n"); wait(); printf("три/n"); printf("четыре/n"); }" или хотя б подскажите где и скать и что за язык..спасибо заранее.. Это сообщение отредактировал(а) wildwolf - 25.1.2011, 11:09 |
|||
|
||||
| baldina |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3433 Регистрация: 5.12.2007 Где: Москва Репутация: 15 Всего: 101 |
C++ изучал, говоришь?
Добавлено через 11 минут и 42 секунды язык С. с небольшими (непринципиальными) исправлениями будет компилироваться как С++. первая программа выведет Очень Большое Число, соотв. максимальному беззнаковому целому на целевой системе. это потомучто open() возвращает int(-1), а спецификация формата вывода - беззнаковая. в 32-битной среде это 4294967295. вторая программа предназначена для исполнения в POSIX-совместимой среде. *nix например. вызов fork() порождает новый процесс (клон текущего) в точке вызова. wait () приостанавливает текущий процесс, пока один из порожденных процессов не завершится (или не ждет, если порожденных процессов нет). так что теперь можешь сам сообразить что она выведет. |
|||
|
||||
| borisbn |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 4875 Регистрация: 6.2.2010 Где: Ростов-на-Дону Репутация: 21 Всего: 135 |
baldina, "+1"
надо бы в эту тему скопировать #inclyde опять же улыбнул Это сообщение отредактировал(а) borisbn - 25.1.2011, 10:57 -------------------- Женщины отличаются от программистов тем, что у них чары состоят из стрингов |
|||
|
||||
| wildwolf |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 7 Регистрация: 24.1.2011 Репутация: нет Всего: нет |
спасиб огромное
изучал, но только поверхносно.. "include" - опечатался=) |
|||
|
||||
| Ignat |
|
|||
![]() Флудератор ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 4030 Регистрация: 19.4.2004 Где: غيليندزيك مدينة Репутация: нет Всего: 73 |
Это, кстати, одна из моих любимых задачек. Выведет она не то, что ожидается =) Чтобы она вывела, что ожидается, нужно ставить flush() после каждого вывода. -------------------- Теперь при чем :P |
|||
|
||||
| wildwolf |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 7 Регистрация: 24.1.2011 Репутация: нет Всего: нет |
а что она выведет? если не секрет)
|
|||
|
||||
| baldina |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3433 Регистрация: 5.12.2007 Где: Москва Репутация: 15 Всего: 101 |
||||
|
||||
![]()
|
| Правила форума "C/C++: Для новичков" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, bsa. |
| 1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Для новичков | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |