インライン関数
インライン展開は、関数呼び出しにかかるオーバーヘッドを無くす目的で行われる。一般に関数の処理内容自体が非常に小さくオーバーヘッドの割合が無視できない場合に使われる。非常に小さい関数の場合、メモリ使用量を削減することもでき、各種最適化を施す上でも有利である。
インライン関数がない場合、プログラマはどの関数をインライン展開すべきかを指定できず、コンパイラが勝手に判断することになる。インライン関数機能があれば、そのアプリケーション固有の知識を元にして(どの関数がよく使われるかなど)、インライン展開すべき関数を決定できる。
また、言語によってはインライン関数はコンパイルモデルと密接に関連している。例えばC++では、インライン関数はモジュール単位に定義する必要がある(通常の関数は1つのモジュールで定義すればよい)。これにより、モジュール単位に独立したコンパイルができるようになっている。