web-dev-qa-db-ja.com

.hppファイルを使用する場合

C++を使用してライブラリを作成しました。このライブラリのPythonラッパーを作成し、boost.python-問題は、私が作成した.hおよび.cppファイルは個別に、何らかの理由で、.soファイルはこれらの.cppファイルをリンクできません。

そのため、拡張子.hppを使用し、実装をヘッダーファイルとして含めることにしました。これはC++の観点からは良い習慣ですか、悪い習慣ですか?プロジェクトをGithubにアップロードして、最適なソリューションを最大限に活用したいと考えています。

追伸この質問は、programmers.stackexchange.comに属すると思うので、もしそうなら、誰かがそれを移行してください。

13
Phorce

プロジェクトにc ++とcが混在している場合、これは良い考えです。コメントで述べたように、.hppと.hは本質的に同じです(cではなくc ++のコンパイル用)。プロジェクトのリンクに問題がある場合は、ファイル拡張子が原因ではありません。

ヘッダーファイルでは、通常、クラス定義を「プロトタイプ」して、現在のコードの前に定義されたメンバーだけでなく、すべてのクラスメンバーを使用できるようにします。

確認してください: *。hまたは* .hppはクラス定義

15
James McDonnell