C++
 Computer >> コンピューター >  >> プログラミング >> C++

G++で複数の.cppファイルと.hファイルを一度にコンパイルする方法

C++のプロジェクトが大きくなると、コードを複数のヘッダーファイル(.h)やソースファイル(.cpp)に分割して管理するのが一般的になります。このような複数のファイルは、g++コマンドにファイル名を続けて並べるだけで、一度にコンパイルできます。

基本的な構文

コンパイルしたいファイルをスペース区切りで列挙するだけです。

g++ abc.h xyz.cpp

コンパイルが成功すると、実行可能ファイル「a.out」が生成されます。以下のコマンドでプログラムを実行しましょう。

./a.out

具体例:ヘッダーファイルの作成

まず、面積を計算する関数を定義したヘッダーファイル「area.h」を作成します。ここでは関数のオーバーロードを利用し、引数の数によって円の面積と長方形の面積を切り分けて計算できるようにしています。

float area(float r){
    return (3.1415*r*r); // 円の面積
}
float area(float l, float w){
    return (l * w); // 長方形の面積
}

具体例:メインプログラムの作成

次に、上記のヘッダーファイルを#includeで読み込み、利用するメインプログラム「find_area.cpp」を作成します。

#include <iostream>
#include "area.h"
using namespace std;
int main(){
    cout << "半径2.5の円の面積: " << area(2.5) << endl;
    cout << "縦5・横7の長方形の面積: " << area(5, 7) << endl;
}

コンパイルと実行

両方のファイルをまとめてコンパイルし、実行すると以下のような結果が得られます。

$ g++ area.h find_area.cpp
$ ./a.out
半径2.5の円の面積: 19.6344
縦5・横7の長方形の面積: 35
$

補足:実行ファイル名を指定する

デフォルトでは「a.out」という名前で出力されますが、「-o」オプションを使えば任意の名前を付けられます。

$ g++ area.h find_area.cpp -o find_area
$ ./find_area
半径2.5の円の面積: 19.6344
縦5・横7の長方形の面積: 35
$

このように、G++では複数のヘッダーファイルやソースファイルを簡単に組み合わせてビルドできます。ファイルがさらに増えた場合はMakefileなどを活用すると、ビルド作業をより効率的に管理できます。

  1. PowerShellでファイルとフォルダーを削除する方法【Remove-Itemコマンド徹底解説】

    ファイルやフォルダーをひとつずつ手動で削除するのは、意外と手間がかかる作業です。しかし、PowerShellの使い方をマスターしていれば、そんな面倒な作業も一瞬で終わらせられます。この記事では、PowerShellを使ってWindowsのファイルやフォルダーを削除するさまざまな方法を紹介します。 PowerShellとは PowerShellは、Windowsが無料で提供しているコマンドライン自動化ツールです。コマンドプロンプトのウィンドウ上で起動するシェルを通じて、OSをより細かくコントロールできるようになるのが特徴です。 PowerShellでは「コマンドレット(Cmdlet)」と呼ばれ

  2. AirDropとは?iPhone・Mac間でファイルを共有する方法を徹底解説

    AirDropとは? 今すぐ、近くにあるMac・iPhone・iPadにファイルを送信できます。 テクノロジーの進化とともに、古いものは新しいものへと置き換えられていきます。その流れの中で、長年親しまれてきたメールもAirDropに取って代わりつつあります。意外に思われるかもしれませんが、AirDropは面倒なメールよりもはるかに優れたコミュニケーション手段なのです。 AirDropを使えば、暗号化された接続を通じて、近くにあるMacやiOSデバイス間でワイヤレスにファイルを共有できます。 何より嬉しいのは、面倒な初期設定なしですぐにファイル共有を始められる点です。デバイスが同じネットワーク