|
0 / 0 / 2
Регистрация: 08.03.2016
Сообщений: 83
|
|||||||||||
Многофайловый проект16.11.2016, 13:41. Показов 5295. Ответов 10
Метки нет (Все метки)
Собственно вопрос, скорее, к работе devc++
Ну вот захотел для "завтраки" собрать МП из 2 файлов 1 - main.cpp (ну как иначе)
Я так понимаю что либо не читает 2й файл/либо я что-то не так делаю. И если я ошибся, то в упор не вижу где
0
|
|||||||||||
| 16.11.2016, 13:41 | |
|
Ответы с готовыми решениями:
10
Многофайловый проект Многофайловый проект |
|
19500 / 10105 / 2461
Регистрация: 30.01.2014
Сообщений: 17,816
|
|
| 16.11.2016, 13:44 | |
|
NS-17_R-18, что-то тут не то...
* Подключения h-файла в main.cpp не видно * Функции GP и Hypotenuse - разные. Компилятор же не может телепатически догадаться, что это одно и то же
0
|
|
|
0 / 0 / 2
Регистрация: 08.03.2016
Сообщений: 83
|
||
| 16.11.2016, 13:47 [ТС] | ||
|
так то у меня все одинаково написано , потому и возник вопрос. Просто я мог где-то галочку не поставить, но ее не увидел. И как-то не слышал что надо что-то дополнительное для подключения 1 к другому файла прописывать А iostream.h у меня нету, лишь iostream "голенький"
0
|
||
|
59 / 54 / 34
Регистрация: 18.04.2014
Сообщений: 122
|
|
| 16.11.2016, 13:56 | |
|
NS-17_R-18, директивой #include "file.h" ты указываешь компилятору вставить в этом месте текст файла file.h. Таким образом происходит "подключение". Поэтому тебе нужно написать #include "имя_файла_с_функцией_GP.h". И определять функции нужно не в заголовочных файлах (*.h), а в файлах исходного код (*.cpp, *.c, ...).
0
|
|
|
0 / 0 / 2
Регистрация: 08.03.2016
Сообщений: 83
|
|||||||
| 16.11.2016, 14:04 [ТС] | |||||||
Что-то пока писал ответ пришло озарение =) Кто-то умный не написал прототип в main и чему-то удивлялся
#include "*.cpp/*.h" То как-то не идет. Или я опять что-то не так делаю
0
|
|||||||
|
19500 / 10105 / 2461
Регистрация: 30.01.2014
Сообщений: 17,816
|
|||||||||||||
| 16.11.2016, 14:08 | |||||||||||||
Сообщение было отмечено DrOffset как решение
Решение![]() Подключить надо твой заголовочный файл с функцией через #include. h-файл традиционно самостоятельно не компилируется - для компиляции он должен быть включен в одну из единиц трансляции, которые, в свою очередь, как правило, строятся на основе файлов *.cpp. А даже если бы компилировался, компиляция в С++ каждой единицы трансляции происходит независимо, поэтому в main.cpp на этапе его компиляции ничего о GP неизвестно. Заголовочные файлы как раз и служат этой цели: доведение информации о сущностях из нескольких единиц трансляции посредством объявления. Естественно для этого нужно заголовочный файл в единицу трансляции подключить. Добавлено через 2 минуты Его ты затем должен подключить в main.cpp
1
|
|||||||||||||
|
0 / 0 / 2
Регистрация: 08.03.2016
Сообщений: 83
|
||
| 16.11.2016, 14:25 [ТС] | ||
|
0
|
||
|
19500 / 10105 / 2461
Регистрация: 30.01.2014
Сообщений: 17,816
|
|||||||
| 16.11.2016, 14:30 | |||||||
|
Ну и ведь всегда можно создать руками, а затем добавить в проект (makefile, pro-файл, cmakelists или что там у тебя...), содержимое в твоем случае примерно такое должно быть:
1
|
|||||||
|
0 / 0 / 2
Регистрация: 08.03.2016
Сообщений: 83
|
||
| 16.11.2016, 14:33 [ТС] | ||
|
5.11, если точнее ![]() Ну вот пока, пожалуй, для начала возьму ручной вариант для запоминания, а то сплошь и рядом ошибки типичного senior developer-а сплошь и рядом...
0
|
||
|
19500 / 10105 / 2461
Регистрация: 30.01.2014
Сообщений: 17,816
|
|||
| 16.11.2016, 14:41 | |||
|
Ну там это делается как-то очень просто, но у меня под рукой ее нет, поэтому скрином помочь не смогу. Гугл, как говорится, в помощь ![]()
1
|
|||
|
Форумчанин
8216 / 5047 / 1437
Регистрация: 29.11.2010
Сообщений: 13,453
|
|
| 16.11.2016, 14:43 | |
Сообщение было отмечено DrOffset как решение
Решение
Создание проекта в Dev
Как разделить программу на модули в Dec C++
1
|
|
| 16.11.2016, 14:43 | |
|
Помогаю со студенческими работами здесь
11
Многофайловый проект Многофайловый проект Многофайловый проект в VS Многофайловый проект Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога
Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
|
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование
. \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json>
Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом.
# Check if. . .
|
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так:
https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347
Основана на STM32F303RBT6.
На борту пять. . .
|
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
|
|
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу,
и светлой Луне.
В мире
покоя нет
и люди
не могут жить в тишине.
А жить им немного лет.
|
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила»
«Время-Деньги»
«Деньги -Пуля»
|
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога
Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
|
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога
Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
|