Conversioni standard
Il linguaggio C++ definisce le conversioni tra i relativi tipi fondamentali. Inoltre, definisce le conversioni per i tipi derivati puntatore, riferimento e puntatore a membro. Queste conversioni sono definite "conversioni standard". Per ulteriori informazioni sui tipi, i tipi standard e i tipi derivati, vedere Tipi).
In questa sezione vengono descritte le conversioni standard seguenti:
Conversioni puntatore a membro
Nota
I tipi definiti dall'utente possono specificare le proprie conversioni.La conversione dei tipi definiti dall'utente è descritta in Costruttori e Conversioni.
Il codice seguente genera conversioni (in questo esempio, promozioni a intero):
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;
Nota
Il risultato di una conversione è un l-value solo se genera un tipo di riferimento.Ad esempio, una conversione definita dall'utente dichiarata come
operator int&()
Nota
restituisce un riferimento ed è un I-value.Tuttavia, una conversione dichiarata come
operator int()
Nota
restituisce un oggetto e non è un l-value.