Форум программистов, компьютерный форум CyberForum.ru

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

Восстановить пароль Регистрация
 
 
Рейтинг: Рейтинг темы: голосов - 17, средняя оценка - 4.94
!Андрей!
6 / 6 / 0
Регистрация: 31.01.2012
Сообщений: 134
30.07.2012, 07:45     Деление кода на .h .cpp #1
Подскажите пожалуйста как правильно поделить код! Обязательно чтобы были заголовочные файлы и файлы .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

Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
30.07.2012, 07:45     Деление кода на .h .cpp
Посмотрите здесь:

C++ перевод кода, деление нацело
C++ Не могу исправить ошибку :113 H:\Dev-Cpp\Проекты\уроки\Безымянный3.cpp cannot convert `IDirectDraw7**' to `IDirectDraw**' for argument `2' to `HRESULT DirectDrawCreate(GUID*, IDirectDraw**, IUnknown*)
C:\tsserver\Projects\cpp\codeblocks\MyComp\compiler\mmz\mmz. cpp|29|error: no match for 'operator=' in '* Item = * Source'| C++
C:\tsserver\Projects\cpp\codeblocks\MyComp\IDE\IDE\IDE.cpp|1 5|error: 'InitApplication' was not declared in this scope| C++
C++ C:\tsserver\Projects\cpp\codeblocks\MyComp\IDE\IDE\IDE.cpp|3 9|undefined reference to `GetStockObject@4'|
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
!Андрей!
6 / 6 / 0
Регистрация: 31.01.2012
Сообщений: 134
30.07.2012, 08:56  [ТС]     Деление кода на .h .cpp #21
Цитата Сообщение от 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
Всё - работает, но мне кажется так бредово делать
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Nameless One
Эксперт С++
 Аватар для Nameless One
5753 / 3402 / 255
Регистрация: 08.02.2010
Сообщений: 7,390
30.07.2012, 08:58     Деление кода на .h .cpp #22
Цитата Сообщение от !Андрей! Посмотреть сообщение
но мне кажется так бредово делать
Совершенно верно. Так делать нельзя.

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

А может кто статью хорошую скинуть? Там чтобы и про классы было написано и про всё(ну как делить)
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
30.07.2012, 09:51     Деление кода на .h .cpp
Еще ссылки по теме:

С помощью командной строки >namberstr f1.cpp Определить число строк в файле с именем f1.cpp C++
Использовать void из 1.cpp в 2.cpp C++
Main.cpp In file included from main.cpp C++

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

Или воспользуйтесь поиском по форуму:
Nameless One
Эксперт С++
 Аватар для Nameless One
5753 / 3402 / 255
Регистрация: 08.02.2010
Сообщений: 7,390
30.07.2012, 09:51     Деление кода на .h .cpp #26
!Андрей!, книги читай (см. прикрепленную тему)
Yandex
Объявления
30.07.2012, 09:51     Деление кода на .h .cpp
Ответ Создать тему
Опции темы

Текущее время: 14:09. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru