Когда использовать файлы .hpp

Я создал библиотеку с использованием С++, я хочу создать Python Wrapper для этой библиотеки, и я использую boost.python - Проблема в том, что я создал файлы .h и .cpp по отдельности и по какой-либо причине, файл .so не может связывать эти .cpp файлы.

Поэтому я решил использовать расширение .hpp и включить реализацию в качестве файла заголовка. Это хорошая или плохая практика с точки зрения С++? Я надеюсь загрузить мой проект в Github, поэтому хочу максимизировать оптимальное решение.

P.S. Я думаю, что этот вопрос будет больше принадлежать на programers.stackexchange.com, поэтому, если это так, может кто-то попросить его перенести.

Ответ 1

Это хорошая идея, если вы смешали С++ и c в своем проекте. Как упоминалось в комментариях .hpp и .h, по сути, одинаковы (для компиляции С++, а не c). Если у вас возникли проблемы с компоновкой проекта, это связано не с расширением вашего файла.

В файлах заголовков обычно 'prototype' определение класса, чтобы можно было использовать все ваши члены класса, а не только те, которые были определены до текущего кода.

Пожалуйста, просмотрите: *. h или *.hpp для определения вашего класса