[C++]オーバーロードのメモ

オーバーロードとは?

C++のオーバーロードについてのメモを残したいと思います。

引数の型や引数の数が違う同じ名前の関数を複数定義する事ができる仕組みを、オーバーロードという。

実験

オーバーロードについて、簡単な実験をします。

同じ名前で、引数がint型、double型の関数をそれぞれ用意します。

関数名は、func()とします。

void func(int a){
    cout << "int型のfunc関数です" << a << endl;
}

void func(double b){
    cout << "double型のfunc関数です。" << b << endl;
}

以上で定義した関数を呼び出します。

int main(void){
    // Your code here!
    int a = 1;
    double b = 1;
    func(a);
    func(b);

    return 0;
}

出力結果

出力結果を下に示します。

main()関数で、aをint型、bをdouble型で定義しました。

同じfunc関数を呼び出しているにも関わらず、引数の型によって、関数が切り替わっているのが分かります。

これがオーバーロードという機能です。