C++プロジェクトの基本構成を徹底解説!初心者向けsrc, include, buildガイド
生徒
「C++でプログラムを作りたいんですが、フォルダ構成がよくわかりません…。」
先生
「C++では、プロジェクトの基本構成を理解することが重要です。src、include、buildという三つの主要フォルダを覚えましょう。」
生徒
「それぞれのフォルダは何のために使うんですか?」
先生
「順番に説明します。わかりやすい例えを使って整理していきましょう。」
1. srcフォルダとは?(ソースコードをまとめる場所)
srcはソースコード(source code)を置くフォルダです。C++のプログラム本体となるファイルをまとめます。たとえると、srcは「レシピの本」のようなもので、どのように料理(プログラム)を作るかの手順が書かれています。
// src/main.cpp
#include <iostream>
int main() {
std::cout << "Hello World!" << std::endl;
return 0;
}
この例ではmain.cppがsrcに置かれ、プログラムの起点となります。複数の.cppファイルがあっても、すべてsrcにまとめることで管理しやすくなります。
2. includeフォルダとは?(ヘッダファイルをまとめる場所)
includeは、関数やクラスの宣言をまとめるヘッダファイル(.hや.hpp)を置く場所です。例えるなら「材料リスト」のようなものです。レシピ(src)の中で必要な材料(関数やクラス)を参照するために使います。
// include/greeting.hpp
#ifndef GREETING_HPP
#define GREETING_HPP
void sayHello();
#endif
// src/greeting.cpp
#include <iostream>
#include "greeting.hpp"
void sayHello() {
std::cout << "Hello from greeting!" << std::endl;
}
srcの中でgreeting.cppを使う際、includeフォルダのヘッダファイルを参照することで、コードの分離と再利用が可能になります。
3. buildフォルダとは?(コンパイル結果をまとめる場所)
buildは、C++コンパイラでコンパイルした結果(実行ファイルやオブジェクトファイル)を置く場所です。これは「完成品の料理」を置く棚のようなものです。srcやincludeのファイルが正しくあれば、buildに実行可能なプログラムが生成されます。
// コマンド例(CMakeやMakefileで自動生成)
cmake -S . -B build
cmake --build build
ビルドすると、buildフォルダに実行ファイルが生成されます。この仕組みを理解すると、ソースとビルド結果を分けて管理できるため、プロジェクトが整理されやすくなります。
4. C++プロジェクトの基本構成まとめ
初心者でも理解しやすい基本構成は次の通りです:
- src:プログラム本体(.cppファイル)をまとめる
- include:ヘッダファイル(.h/.hpp)をまとめる
- build:コンパイル結果(実行ファイル)をまとめる
この構成を守ることで、複数人で開発する場合やCMake、Makefileでのビルドもスムーズになります。
初心者がまず行うべきは、srcとincludeに最低限のファイルを置いて、buildフォルダでビルド結果を確認することです。慣れてきたら、ライブラリや複数のモジュールを追加しても整理された構造を維持できます。
5. 実際のディレクトリ例
my_project/
├── include/
│ └── greeting.hpp
├── src/
│ ├── main.cpp
│ └── greeting.cpp
└── build/
この構成でCMakeやMakefileを使えば、効率的にコンパイル・ビルドが行えます。srcとincludeを整理しておくことで、エラーの原因追跡やコードの再利用も簡単になります。