>>この記事には書き直した新しいページがあります。<<
<<前 [TOP] 次>>
Visual Studioで新規プロジェクトを作り、以下の2つのcppファイル、1つのヘッダーファイルを作成して下さい。
cppファイルは「ソースファイル」フォルダに、.hファイルは「ヘッダーファイル」フォルダに作成すると良いでしょう。
【Bunkatsu1.cpp】
/* file : Bunkatsu1.cpp */ #include <iostream> #include "head.h" void main() { std::cout << "test1 " << test1(3.0, 4.0) << std::endl; std::cout << "test2 " << test2("string") << std::endl; }
【Bunkatsu2.cpp】
/* file : Bunkatsu2.cpp */ #include<iostream> #include "head.h" float test1(float x, float y) { return x*x*y*y; } char *test2(char *s) { return s+1; }
【head.h】
/* header file : head.h */ float test1(float x, float y); char *test2(char *s);
C言語のプログラムは機械語に翻訳された後に、必要なライブラリ(#include
これらの過程は厳密に前者がコンパイルと呼ばれ、後者がリンクと呼ばれています。
リンク自体はライブラリのリンクに限らず、開発者が自由に行えるようになっています。
つまり、開発者がプログラムを分割して、個別にコンパイルし、できたオブジェクトをリンクすることも可能になっています。
この分割されたプログラムの断片をモジュールといいます。
プログラムソースを二つに分けて開発すると、両方のプログラムソースの先頭に宣言が必要となります。
関数宣言は、リンクさせたいモジュールの先頭にコピーすることになります。
たくさんの関数やモジュールがある場合は、この記述が面倒なので、ヘッダファイルというファイルにまとめて記述し、includeで読み込ませた方が大変便利です。
ヘッダファイル名は以下のようにします。
ファイル名.h
これをプログラムソースに取り込むにはプログラムソースの先頭に以下のように記述します。
include ”ヘッダファイル名”
このように、includeでヘッダファイル名をダブルコーテーション(””)で囲みます。
この記述をすべてのモジュールに宣言します。
分割コンパイル、ビルド(リンク)の方法について説明します。
順番として、まずヘッダファイルを作成します。
次にmain関数のある関数を作成、コンパイルします。
指定のファイルのみコンパイルするには、ファイル名で右クリックして「コンパイル」を選択します。
このとき、main関数のあるプログラムソースのファイル名がクラス名になります。
次に、残りのモジュールを先ほど作成したクラス名のワークスペースでコンパイルしてください。
すべてのモジュールのコンパイルが終わったらビルド(リンク)してください。
エラーがなくビルドが終了したら、実行できます。
サンプルプログラムをビルドしてデバッグしてみましょう。
<<前 [TOP] 次>>