![]() |
Модераторы: Daevaorn |
![]() ![]() ![]() |
|
Fedor |
|
||||||||
![]() Днепрянин ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2090 Регистрация: 8.2.2003 Где: Великий Репутация: нет Всего: 32 |
Привет всем. Я вот сейчас сижу в легком замешательстве. Не получается в борландовском c++ 3.1 сделать элементарный проект из трех файлов: главного файла, хедера и файла с реализацией этого хедера. Собственно, вот код:
Хедер t.h:
Реализация хедера. Файл t.cpp:
Главный файл test.cpp:
При линке вылазит ошибка
Возможно, стоит упомянуть что все три файла - находятся в проекте. Кроме этих файлов в проекте ничего нет. Может, у меня что-то с настройками, но вроде пересмотрел все, вроде ничего проблемного нет... P.S. В студии подобный код работает на ура. -------------------- Мы - Днепряне. Мы всех сильней. |
||||||||
|
|||||||||
apook |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 794 Регистрация: 12.7.2006 Репутация: 9 Всего: 23 |
Включи все файлы в командную строку компилятора tcc
tcc -e a.cpp b.cpp c.cpp -------------------- Мои руки из дуба, голова из свинца ну и пусть ... |
|||
|
||||
Fedor |
|
|||
![]() Днепрянин ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2090 Регистрация: 8.2.2003 Где: Великий Репутация: нет Всего: 32 |
Ага. Нашел в принципе некое решение проблемы. Нужно было в опциях проекта для каждого h-файла вручную выставлять опцию "Exclude from link". Т.е. линковщик cpp и h файлы компилировал в один объектник, насколько я понял и потом кричал что две одинаковые функции.
В общем, такой уже вопрос, для общего ознакомления: зачем он это делает, можно ли все это как-то настроить, или где моя криворукость? Спс. -------------------- Мы - Днепряне. Мы всех сильней. |
|||
|
||||
Kuvaldis |
|
|||
![]() механик-вредитель ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1189 Регистрация: 16.6.2006 Где: Минск Репутация: 11 Всего: 61 |
Fedor,
Включай в проект ТОЛЬКО *.cpp. Хедеры не трогай. Include-ы оставь. И все будет работать ![]() -------------------- Помни - когда ты спишь, враг не дремлет Спи чаще и дольше, изматывай врага бессоницей |
|||
|
||||
dizzy1984 |
|
||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 675 Регистрация: 15.2.2007 Репутация: 3 Всего: 25 |
поставив пточку с запятой ты определил процедуру с пустым телом
после чего определил ее снова с кодом вывода переенной ну не ставятся в c ; при объявлении процедуры. |
||||
|
|||||
Earnest |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5962 Регистрация: 17.6.2005 Где: Рязань Репутация: 53 Всего: 183 |
Неважное начало жизни на форуме - так категорически заявлять полную ерунду... ![]() Ты совершенно не прав. Пустое тело - это две скобки {}, а первое выражение - просто предварительное объявление функции. Их может быть сколько угодно, лишь бы друг другу не противоречили. -------------------- ... |
|||
|
||||
zkv |
|
|||
![]() ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2133 Регистрация: 23.7.2006 Где: Санкт-Петербург Репутация: 26 Всего: 92 |
||||
|
||||
dizzy1984 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 675 Регистрация: 15.2.2007 Репутация: 3 Всего: 25 |
![]() Это действительно просто декларация. Меня ввела в заблуждение пришедшая мне на память старая история про то как все начинающие программисты при переходе с pascal на c++ ставят ; после прототипа функции, после чего пишут на новой строке символ открывающейся фигурной скобки и получают ошибку компиляции. |
|||
|
||||
![]() ![]() ![]() |
Правила форума "С++:Общие вопросы" | |
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |