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

Заголовочные файлы - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 17, средняя оценка - 4.76
BeginerMan
 Аватар для BeginerMan
49 / 48 / 5
Регистрация: 17.11.2012
Сообщений: 418
05.02.2013, 17:36     Заголовочные файлы #1
Ещё раз всем здрасьте , последний вопрос в котором я не могу разобраться - Для чего нужны заголовочные файлы ???
Для чего нужны эти файлы .h объясните мне на русском языке а не на теоретическом !!!
Ну и пример что бы до конца понел , спасибо заранее
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
05.02.2013, 17:36     Заголовочные файлы
Посмотрите здесь:

C++ заголовочные файлы в с++
Заголовочные файлы C++
C++ Заголовочные файлы
g++ Заголовочные файлы C++
Заголовочные файлы (.h) C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
MrGluck
Ворчун
Эксперт С++
 Аватар для MrGluck
4928 / 2671 / 243
Регистрация: 29.11.2010
Сообщений: 7,429
05.02.2013, 17:48     Заголовочные файлы #2
Представьте, что вы написали программу в миллион строк кода. А потом оказалось, что туда надо внести малюсенькие изменения, для начала вам надо в этих миллион строках как то сориентироваться, ну да ладно, вы же не лыком шиты, вы компьютерщик со стажем, Ctrl + F, усмехаетесь вы. Ну и через несколько итераций поиска вы все же находите нужную вам часть, потом понимаете, что она то функционирует нормально, вы снова набираете Ctrl + F и ищите другую часть и так долго-долго.
Но далее. Вы нашли наконец причину ошибки и исправили её. Представьте, сколько будет длиться компиляция всего файла? А если с первого раза ошибку не удалось искоренить, идем в начало?
Часто программисты отделяют части кода, которые можно использовать потом повторно, просто включив их, или просто разъединяя все по логическим маленьким кирпичикам, чтобы было легче потом ориентироваться, или разделяют код, чтобы компиляция шла не по несколько часов. Ведь при изменении лишь .h файла мы не будем трогать весь большой проект.
Надеюсь, аргументы показались вам достаточно вескими.
BeginerMan
 Аватар для BeginerMan
49 / 48 / 5
Регистрация: 17.11.2012
Сообщений: 418
05.02.2013, 18:02  [ТС]     Заголовочные файлы #3
А можно пример кодом ещё ? : D
в основном понел , только как применять не совсем понел , напиши мне мини код как применять и всё будет ок , спасибо большое!
MrGluck
Ворчун
Эксперт С++
 Аватар для MrGluck
4928 / 2671 / 243
Регистрация: 29.11.2010
Сообщений: 7,429
05.02.2013, 18:14     Заголовочные файлы #4
Например вот:
SuperClass.h
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#ifndef _SUPER_C_ // инклюд нварды чтобы хедер не включился 2 раза в проект
#define _SUPER_C_
 
 
// описываем лишь интерфейс, без реализации
 
class Putin
{
    public:
        // ...
        void destroyHouse();
        // ...
};
 
#endif
SuperClass.cpp
C++
1
2
3
4
5
6
7
8
// данный файл содержит реализацию методов из файла SuperClass.h
#include <iostream>
#include "SuperClass.h"
 
void Putin::destroyHouse()
{
    std::cout << "Bang bang!!!\a\n";
}
main.cpp
C++
1
2
3
4
5
6
7
8
#include "SuperClass.h"
 
 
int main()
{
    Putin p;
    p.destroyHouse();
}
Мы описываем класс в отдельных файлах. В одном объявляем интерфейс, в другом реализуем его, т.о. повышается удобство работы.
BeginerMan
 Аватар для BeginerMan
49 / 48 / 5
Регистрация: 17.11.2012
Сообщений: 418
05.02.2013, 18:48  [ТС]     Заголовочные файлы #5
Ооооо , огромное спасибо , понел , ваще респект , ещё раз спасибо
Rem_
23 / 23 / 3
Регистрация: 05.02.2013
Сообщений: 243
Записей в блоге: 8
05.02.2013, 18:48     Заголовочные файлы #6
По русски.
Вместо строчки #include "xxxxx.h" препроцессор вставляет текст из файла xxxxx.h
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
05.02.2013, 18:52     Заголовочные файлы
Еще ссылки по теме:

заголовочные файлы C++
C++ Заголовочные файлы
C++ Заголовочные файлы .h, файлы исходного когда c/c++ и установление связи между ними

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

Или воспользуйтесь поиском по форуму:
0x10
2426 / 1598 / 232
Регистрация: 24.11.2012
Сообщений: 3,919
05.02.2013, 18:52     Заголовочные файлы #7
MrGluck, Это назначение не только заголовочных файлов, но разбиения проекта на файлы в принципе.

Гораздо более серьезная мотивация - необходимость линковаться со сторонними библиотеками. Для этого нужна сама библиотека и чтобы ее использовать - объявления сущностей, реализованных в ней. Теоретически такие объявления можно написать и руками, что само по себе глупо. Поэтому разработчик библиотеки может предоставить только саму сборку и заголовочные файлы, которые по сути объявляют интерфейс библиотеки.
Yandex
Объявления
05.02.2013, 18:52     Заголовочные файлы
Ответ Создать тему
Опции темы

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