Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.80/25: Рейтинг темы: голосов - 25, средняя оценка - 4.80
6 / 6 / 1
Регистрация: 31.01.2012
Сообщений: 134

Деление кода на .h .cpp

30.07.2012, 07:45. Показов 6511. Ответов 25
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Подскажите пожалуйста как правильно поделить код! Обязательно чтобы были заголовочные файлы и файлы .cpp

main.cpp
C++
1
2
3
4
5
6
7
8
9
10
11
12
# include <iostream>
using namespace std;
# include <conio.h>
# include "queue.h"
 
int main(void)
{
    show(5);
    
    getch();
    return 0;
}
queue.cpp
C++
1
2
3
4
5
6
7
8
9
# include <iostream>
using namespace std;
 
void show(int n)
{
     cout<<n;     
}
 
# include "queue.h"
queue.h
C++
1
void show(int);
Выдаёт ошибку:

In function `main':
[Linker error] undefined reference to `show(int)'
ld returned 1 exit status

0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
30.07.2012, 07:45
Ответы с готовыми решениями:

Разделение кода на cpp и h файлы
Добрый день. Расскажите, пожалуйста, как разделить код на два файла cpp и файл h. #include &lt;iostream&gt; #include &lt;conio.h&gt; ...

Файл исходного кода *.cpp создаётся в utf-8
Всем привет! Установил Visual Studio, проекты на C++ создаются и в них файлы *.cpp в кодировке utf-8. Если перекодировать в 1251, задать...

Есть три файла. файл main.cpp и Source.cpp знают только Header.h, так как он подключен. как же подключается Source.cpp
main.cpp #include &lt;iostream&gt; #include&quot;Header.h&quot; using namespace std; int main() { A ob; ob.f(); return...

25
6 / 6 / 1
Регистрация: 31.01.2012
Сообщений: 134
30.07.2012, 08:56  [ТС]
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от Nameless One Посмотреть сообщение
!Андрей!, ну вон у товарища выше все успешно компилируется
Не, конечно когда я делаю так:

main.cpp
C++
1
2
3
4
5
6
7
8
9
10
# include <iostream>
# include <conio.h>
# include "queue.cpp"
 
int main(void)
{
    show(5);
    getch();
    return 0;
}
queue.cpp
C++
1
2
3
4
5
6
7
8
9
# include <iostream>
 
using namespace std;
 
void show(int n)
{
     cout<<n;     
}
#include "queue.h"
queue.h
C++
1
2
3
4
5
6
#ifndef QUEUE_H
#define QUEUE_H
 
void show(int);
 
#endif
Всё - работает, но мне кажется так бредово делать
0
Эксперт С++
 Аватар для Nameless One
5828 / 3479 / 358
Регистрация: 08.02.2010
Сообщений: 7,448
30.07.2012, 08:58
Цитата Сообщение от !Андрей! Посмотреть сообщение
но мне кажется так бредово делать
Совершенно верно. Так делать нельзя.

Покопайся в настройках проекта, IDE, скорее всего, проблема в именно в настройках.
1
6 / 6 / 1
Регистрация: 31.01.2012
Сообщений: 134
30.07.2012, 09:17  [ТС]
Переустановил DEV-C++ и всё заработало! Большое спасибо)
0
 Аватар для DaskOFF
113 / 113 / 42
Регистрация: 02.05.2012
Сообщений: 524
Записей в блоге: 1
30.07.2012, 09:27
Цитата Сообщение от Nameless One Посмотреть сообщение
int main(void)
зачем void ?
0
6 / 6 / 1
Регистрация: 31.01.2012
Сообщений: 134
30.07.2012, 09:30  [ТС]
хз, привычка

А может кто статью хорошую скинуть? Там чтобы и про классы было написано и про всё(ну как делить)
0
Эксперт С++
 Аватар для Nameless One
5828 / 3479 / 358
Регистрация: 08.02.2010
Сообщений: 7,448
30.07.2012, 09:51
!Андрей!, книги читай (см. прикрепленную тему)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
30.07.2012, 09:51

Мешает ли разделение кода на объявление (.h) и определение (.cpp) inline оптимизации?
Читал что когда включают хедер но не реализацию в единицу трансляции, это мешает компилятору инлайнить функции/методы ввиду того что...

Перевод кода с Delphi, деление нацело
во общем есть условие { if ((y4*x3 div 10).quot==4) if (((100*x1+10*x2+x3)*y1 div 100)&gt;0)&amp;&amp;(((100*x1+10*x2+x3)*y1...

.m to .cpp левосторонее деление матриц
Доброго времени суток. Помогите перевести с матлаба в с++; x,y -векторы размерностью n; mx = mean(x); my = mean(y); X =...

Вынос кода из CPP во внешний файл
Здравствуйте. Используется С Builder 2006 На данный момент структура проекта http://fierytrance.ru/c/forum/1.png выделенный файл...

Очередность исполнения кода в нескольких cpp файлах
Есть головной файл с формой unit1.cpp в середине кода, передать продолжение программы в unit2.cpp которая не имеет формы и в конце...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
26
Ответ Создать тему
Новые блоги и статьи
Запустил конкурс "тем и промптов для текстовых квестов созданных почти чисто ИИ"
Adler 06.10.2026
Всем привет! За последние три-четыре дня я создал более 16 текстовых квестовых игр используя преимущественно по одному запросу к ИИ на игру. Мне так понравилось смотреть все ветки/ сцены во всех. . .
ИИ не может найти нужный язык в списке
Supersumestria 05.10.2026
Я ему даю вот такое изображение и прошу найти и подчеркнуть немецкий язык. Возвращает он вот это: https:/ / i. **********/ vqBWLe2. png Нужную строчку в 3й колонке просто выдумал. . Это. . .
Новая последняя моя музыка в SUNO
zorxor 05.10.2026
Здравствуйте, дорогие мои друзья! С большой радостью я хотел бы представить вам свою новую последнею музыку, которую сгенерировала мне по моей просьбе нейросеть SUNO. С уважением, zorxor. Это. . .
Программный домашний кинотеатр
russiannick 27.09.2026
Сподобился на программный домашний кинотеатр. В качестве ЯВУ по традиции выбрал js. В помощники взял Яндекс-Алису. Было создано три зала на разные интересы. исторические и ретро сериал Хичкок. . .
Беседа с ИИ о программистах, недопускающих к созданию и правке кода генеративные ИИ и причины этого
zorxor 21.09.2026
Раньше я радовался или получал некоторые эмоции, пусть небольшие, но всё же, от самого процесса написания кода, рекомпиляции и запуска, видя постепенное развитие программы и прочее. А теперь лень. . .
Мобильное приложение ColorStep
pavlinmavlin 17.09.2026
Реализовал приложение Красный, Зеленый, Синий в Unity3d + c#. Название изменил на ColorStep. Приложение прошло модерацию и теперь доступно для скачивания. Делал его сам, шаг за шагом — и вот,. . .
Запрет дублирования строк в табличной части
Maks 13.09.2026
Реализация из решения ниже выполнена на нетиповом справочнике "Нормы ТО" с табличной часть "Виды ТО", разработанного в КА2, со следующими реквизитами: - ВидТО (СправочникСсылка. ВидыТО); - ВидГСМ. . .
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Jin X 06.09.2026
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр. Работая с форумом и нейросетями в браузере часто хочется что-то подкорректировать или добавить какого-то функционала. Ниже прикреплён. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru