Conversões padrão
A linguagem C++ define as conversões entre seus tipos fundamentais.Ele também define as conversões de ponteiro de referência, e tipos derivados de ponteiro para membro.Essas conversões são chamadas "conversões padrão". (Para obter mais informações sobre tipos, tipos padrão e tipos derivados, consulte tipos.)
Esta seção aborda as seguintes conversões padrão:
Conversões de ponteiro para membro
Observação Tipos definidos pelo usuário podem especificar suas próprias conversões.Conversão de tipos definidos pelo usuário é abordado em construtores e conversões.
O código a seguir faz com que as conversões (no exemplo, promoções integrais):
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;
Observação |
---|
O resultado de uma conversão é um l-value, somente se ela produz um tipo de referência.Por exemplo, uma conversão definida pelo usuário é declarado como |
operator int&()
Observação |
---|
Retorna uma referência e é um valor de l.No entanto, uma conversão é declarada como |
operator int()
Observação |
---|
Retorna um objeto e não é um valor de l. |