ほとんどのJavaのバックグラウンドからのコミット私は最近、C++の一部を学び始めました。 LinkedListを記述するクラスを作成しようとしています。私はこのクラスを外部ライブラリのようにしたいので、他のアプリケーションで使うことができるので、ヘッダファイルとして宣言する必要があります。ヘッダとcppファイルの実践的なデザインの違い
私は、設計上の観点から、C++にはヘッダとcppファイルの両方が必要であることを理解しています。ここでヘッダには大部分が宣言が含まれ、実装はcppファイルのままです。
私は理解できませんが、上記の設計技術の実際の目的は何ですか。 C++(または少なくとも私のCodeblocksエディタ)がJavaのようなコメントを /**でサポートしているので、ヘッダーファイルをすばやく調べて、各メソッドの機能に関するコメントを読むことは難しいようです簡単にクラスのオブジェクトを作成し、単にヒットします。ボタンを押してメソッドの説明メニューを開き、ヘッダーファイルを調べるよりも整然としたやり方で好きな説明を読んでください。
また、ヘッダファイルの中にすべてを入れて、cppファイルを完全に無視するとプログラムがうまく動作することに気付きました。
私の質問は、ヘッダーファイル内のすべてを実装するか、これが受け入れがたいC++コーディングの練習とみなされるかどうか、そしてもしそうならば、どうしてかということになります。
まったく同じことを尋ねていません。 – exophrenik
多くのC++ライブラリは、実際には "ヘッダのみ"(例えば、ほとんどのブースト)として実装されています。そう、ええ、進んでください。唯一の落とし穴は、ヘッダー内のグローバル変数をインスタンス化できないことです。それらは参照できるだけです。 – kebs
まったく同じ質問をするのはそれほど問題ではありませんが、既存の回答はあなたがここで求めているものに答えるのに十分です。 –