h и cpp файлы



Автор Sooqua задал вопрос в разделе Другие языки и технологии

[C++] Добавление .cpp-файлов в проект и получил лучший ответ

Ответ от Зло[гуру]
это все называется проектированием. и делают так потому что это удобно.
например, если хранить в хидерах только объявления, то всего пары секунд будет достаточно для того, чтобы понять, что данный класс умеет делать. Зло
Просветленный
(32749)
какой именно вес?
вес скомпилированной проги - нет.
вес папки с проектом - естественно, да

Ответ от Kaiu[гуру]
cpp компилируется и если все держать в одном файле, то придется все каждый раз заново компилить, что для огромных проектов займет много времени
Прототип функции надо тогда, когда просто требуется описать функцию которая еще не известна и будет где-то определена ниже или когда вообще будет определена в другом модуле. Да и по прототипу компилятор понимает какую функцию подставить, так как имя может быть одинаковым, но по типам можно понять конкретно какая функция нужна

Ответ от Николай Веселуха[гуру]
Ну вот пишешь ты программу на Си в которой нужно использовать математические функции.
Приходится подключать заголовочный файл math.h, в котором собраны прототипы всех математических функций.
Если функция без прототипа, то она будет видна из кода только в том случае, если определена выше.
Нашли способ, указывать выше только прототип функции, её объявление, а саму функцию, в этом случае, определяют в любом месте программы.
Прототип, указывают в заголовочном файле, который потом подключается директивой includ вверху исходного кода.
После этого все функции, прототипы которых указаны в заголовочном файле, становятся доступными для использования.
Сами же функции реализованы, каждая в своём c-файле.
Точно также и в С++ каждому классу свой отдельный cpp-файл.
Такая архитектура позволяет решать много задач, часть из которых упомянута выше.
Главная из которых, чем короче код, тем меньше в нём ошибок.

Ответ от 3 ответа[гуру]
Привет! Вот подборка тем с похожими вопросами и ответами на Ваш вопрос: [C++] Добавление .cpp-файлов в проект
Заголовочный файл на Википедии
Посмотрите статью на википедии про Заголовочный файл
 

Ответить на вопрос:

Имя*

E-mail:*

Текст ответа:*
Проверочный код(введите 22):*