HOWTO · C++
C++ の複数のコード ファイル
このチュートリアルは、単一の C++ プログラムで複数のファイルを使用することについてです。 大きくて長いプロジェクトでは、すべてのコードを 1つのファイルに記述するのは面倒です。 そのため、プロジェクト内のファイルを分離し、プロジェクトをより管理しやすく、リファクタリングしやすくする方法を学びます。
このページの内容
このチュートリアルでは、単一の C++ プログラムで複数のファイルを使用する方法について説明します。 大きくて長いプロジェクトでは、すべてのコードを 1つのファイルに記述するのは面倒なので、プロジェクト内のファイルを分割して、管理しやすくリファクタリングしやすくする方法を学びます。
プログラミングのキャリアのこの時点まで、すべてのコードを 1つのファイルに記述してきました。 メイン関数、プロトタイプ、システム関数、追加関数など、すべてが含まれていました。
これは、(大規模な) プログラミング プロジェクトを組み立てる最良の方法ではありません。 プログラミング プロジェクトを複数のファイルに分割して、より整理され、安全で、移植性があり、変更可能で、再コンパイルが高速になる方法を学習します。
これには多くの理由がありますが、時間と情報が多すぎるため、詳細を説明することはできません.
C++ プログラムで複数のコード ファイルを使用する
すべてを 1つのファイルにまとめたサンプル ファイルから始めて、そのファイルを分離します。
コード例:
#include <iostream>
using namespace std;
void helloFunc();
int main() {
helloFunc();
return 0;
}
void helloFunc() { cout << "Hello World" << endl; }
このコード スニペットでは、最初に helloFunc() 関数を宣言し、プログラムの後の段階でそれを定義したことがわかります。 次に、main 関数を記述しました。
これは、3つのファイルで実行できます。 ヘッダー ファイルで関数を宣言し、cpp ファイルで定義します。
コード例 (hello.h):
#include <iostream>
using namespace std;
void helloFunc();
コード例 (hello.cpp):
#include "hello.h"
void helloFunc() { cout << "Hello World" << endl; }
コード例 (main.cpp):
#include "hello.h"
int main() {
helloFunc();
return 0;
}
ヘッダーファイル hello.h から始めましょう。 ヘッダー ファイルには、関数の定義、struct または class の定義、定数の定義など、すべての定義が含まれています。
この .h 拡張子は、このファイルがコンパイルされないことをコンパイラーに伝えます。 これはテキスト ファイルのようなもので、誰でも読み取ることができます。 これは、ヘッダー ファイルがドキュメント ファイルであることを意味します。
プログラマーが将来いくつかの関数を使用したい場合、関数のプロトタイプを確認するだけでよく、関数定義について詳しく調べる必要はありません。 最後に、テンプレート コードもヘッダー ファイルに含める必要があります。
ここで、ヘッダー ファイルで宣言された関数定義を含む cpp ファイルが作成されます。 CPP ファイルは、このファイルをコンパイルしてバイナリ ファイルに変換することをコンパイラに伝えます。
あなたのコードの完全性は保護されており、あなたの許可なしに他の人がコードを変更することはできません。 これは、このコードの分離により、コード ファイルのセキュリティも保証されることを意味します。
この手法の背後にあるもう 1つの理由は、移植性です。 たとえば、後で他の多くのプログラムで使用できるバイナリ検索コードを作成したとします。 これらの関数用の個別のファイルがあれば、そのような関数を他のプロジェクトで簡単に使用できます。
最後に、main ファイルには main 関数のみが含まれ、先頭にヘッダー ファイルが含まれています。 このファイルには main 関数のみが含まれており、すべての関数を呼び出すだけで他には何もありません。