標準変換
C++ 言語では、基本型間での変換が定義されています。 また、ポインター、参照、およびメンバーへのポインターの派生型についても変換が定義されています。 これらの変換を "標準変換" といいます (型、標準の型、派生型の詳細については、「型」を参照してください)。
このセクションでは、次の標準変換について説明します。
次のコードは、変換 (この例では整数の上位変換) の実行例を示しています。
long lnum1, lnum2;
int inum;
// inum promoted to type long prior to assignment.
lnum1 = inum;
// inum promoted to type long prior to multiplication.
lnum2 = inum * lnum2;
注意
参照型を生成する場合のみ、変換の結果が左辺値になります。たとえば、次のようなユーザー定義変換を宣言したとします。
operator int&()
注意
このユーザー定義変換は参照を返し、左辺値です。一方、次のような変換を宣言したとします。
operator int()
注意
この場合はオブジェクトを返し、左辺値ではありません。