Мой личный стиль в C ++ всегда заключался в том, чтобы помещать объявления классов во включаемый файл и определения в файл .cpp, очень похоже на то, как указано в Ответ Локи на Заголовочные файлы C ++, Разделение кода . По общему признанию, одна из причин, по которой мне нравится этот стиль, вероятно, связана со всеми годами, которые я потратил на кодирование Modula-2 и Ada, оба из которых имеют похожую схему с файлами спецификаций и файлами тела.
У меня есть коллега, гораздо более осведомленный в C ++, чем я, который настаивает на том, чтобы все объявления C ++, по возможности, включали определения прямо в заголовочный файл. Он не говорит, что это допустимый альтернативный стиль или даже немного лучший стиль, а скорее это новый общепринятый стиль, который все сейчас используют для C ++.
Я не такой подвижный, как раньше, так что я не очень-то стремлюсь забраться на его подножку, пока не увижу с ним еще нескольких человек. Итак, насколько распространена эта идиома?
Просто, чтобы дать некоторую структуру для ответов: это сейчас Путь , очень распространенный, несколько распространенный, необычный или ненормальный?