C++ プログラミングガイド

型検査

通常コンパイラ (実際にはインタプリタ) は、演算とデータの型が適合しているか確かめるために型検査を行います。C++ の型検査は C より厳格ですが、Pascal ほどではありません。Pascal が誤ったデータ型を常に拒否するのに対し、C++ コンパイラはエラーを出力する場合もありますが、ほとんどの場合は適した型に変換します。

もちろん、このような C++ コンパイラによる自動変換のほかに、C と同様に明示的な 「型変換」もできます。

関数名の多重定義についても同様です。C++ では複数の関数に同じ名前を付けることができます。コンパイラは、関数呼び出しの際にパラメータの型を検査して呼び出す関数を決定します。正しい関数がコンパイル時に判定できないと、コンパイラは「曖昧である」という意味のエラーを出力します。