2016-08-07 8 views
0

クラスの実装と宣言を分離することをお勧めしました。例えば、クラス宣言のためのfish.h、クラス実装のためのfish.cppです。問題は、main関数を含むファイルにfish.hを含めることだけができることです。 IDEは1つのプロジェクトにすることでこの問題を解決することができますが、VSコンパイラでIDEを使用しないでどうするのでしょうか? 3つのファイルがあるとします。クラス宣言とその実装を2つのファイルに分けて、IDEなしでコンパイルする方法は?

fish.hのクラス宣言。

クラス実装のためのfish.cpp;

test.cppにはmain関数が含まれています。

(私は前に単一ファイルのコンパイルのためのCL/EHscのTEST.CPPを使用)

+3

'cl/EHsc test.cpp fish.cpp'のようなものを試しましたか? – wasthishelpful

+0

ビルド時に2番目のソースファイルを追加しようとしましたか? –

+0

OK、皆様、ありがとうございます。 –

答えて

0

IDEは、コンパイルの担当ではありません。

背後には、別のプログラムがあります。 構築プロセスは2つの段階で行われる:

  • コンパイル - 各翻訳単位(.cppファイル)の中間バイナリを生成します。
  • リンク - すべてのバイナリを通過し、ドットを接続し、1つのバイナリ(.exe)を作成します。

IDEは、建物ツールチェーンにどのファイルを自動的に提供するかを追跡します。あなたがそれを自分でやることを妨げるものは何もありません。

コンパイラ.cppファイルとリンカ.hファイル+コンパイラが吐き出すものを知っていることがわかっています。

+0

IDEによって異なります。いくつかのIDEはコンパイラとリンカの緊密な統合を持っています。 – Peter

関連する問題