Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 21.12.2019, 16:50   #1
Артэс
Форумчанин
 
Регистрация: 05.06.2007
Сообщений: 529
По умолчанию вопрос о функциях в .h файле

Здравствуйте. Заметил что можно писать функции прямо в .h файле вместо .c, что в общем-то оказалось удобным, ведь не надо подключать отдельный файл через компилятор, достаточно указать include в исходнике. Но мне кажется это не совсем правильно.. собственно и вопрос, можно ли так делать и какие есть минусы у этого способа?
Артэс вне форума Ответить с цитированием
Старый 15.01.2020, 04:13   #2
Desc
Участник клуба
 
Аватар для Desc
 
Регистрация: 21.11.2007
Сообщений: 1,063
По умолчанию

Цитата:
Сообщение от Артэс Посмотреть сообщение
Но мне кажется это не совсем правильно..
Правильно кажется.
К хорошему стилю программирования относится создание файлов типа *.cpp и *.h.
Например в func.h файле содержится прототип функции, а в func.cpp объявление функции.
I am not a wizard, I am just learning.
Desc вне форума Ответить с цитированием
Старый 15.01.2020, 07:43   #3
Алексей1153
фрилансер
Форумчанин
 
Регистрация: 11.10.2019
Сообщений: 947
По умолчанию

Артэс, делать можно, но следует помнить, что когда включаешь инклуд в какие-нибудь *.c , то весь код заголовка будет продублирован в каждом файле (соответственно, столько раз код будет продублирован в готовом модуле - и функции, и статические массивы). А это - более долгая компиляция и бОльший размер модуля.

Иногда на это пофиг, а иногда необходимо учитывать. Кроме того, бывают ситуации, когда некоторые функции таки приходится разносить на два файла (заголовок и реализацию), иначе просто не получится скомпилить из-за циклической зависимости
Алексей1153 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
asm x64 вопрос - как в готовом уже *.exe файле прописать свою строку и занести ее в регистр, например в rcx Quneri Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 8 08.10.2018 08:13
как обработать контрольній вопрос в файле обработчике Nostalgia PHP 1 28.08.2012 10:09
параметры в функциях си the_deer_one Общие вопросы C/C++ 6 09.03.2011 14:17
Не разбираюсь в функциях logok Общие вопросы C/C++ 5 03.04.2010 00:30
Код в поцедурах и функциях! Jondeer Общие вопросы C/C++ 1 10.06.2008 18:16