Cplusplus-cpp-inline-functions

提供:Dev Guides
移動先:案内検索

C ++インライン関数

C ++ inline 関数は、クラスで一般的に使用される強力な概念です。 関数がインラインの場合、コンパイラーは、コンパイル時に関数が呼び出される各ポイントにその関数のコードのコピーを配置します。

コンパイラーはすべてのコードをもう一度置き換える必要があるため、インライン関数を変更するには、関数のすべてのクライアントを再コンパイルする必要があります。そうしないと、古い機能が継続されます。

関数をインライン化するには、関数名の前にキーワード inline を置き、関数を呼び出す前に関数を定義します。 定義された関数が1行以上の場合、コンパイラはインライン修飾子を無視できます。

クラス定義内の関数定義は、 inline 指定子を使用しなくても、インライン関数定義です。

以下は、インライン関数を使用して最大2つの数値を返す例です-

#include <iostream>

using namespace std;

inline int Max(int x, int y) {
   return (x > y)? x : y;
}

//Main function for the program
int main() {
   cout << "Max (20,10): " << Max(20,10) << endl;
   cout << "Max (0,200): " << Max(0,200) << endl;
   cout << "Max (100,1010): " << Max(100,1010) << endl;

   return 0;
}

上記のコードをコンパイルして実行すると、次の結果が生成されます-

Max (20,10): 20
Max (0,200): 200
Max (100,1010): 1010