Compartir a través de


Expresiones de sufijo

Las expresiones de sufijo constan de las expresiones primarias o expresiones en las que los operadores postfijos siguen una expresión primaria.Se enumeran los operadores postfijos en la tabla siguiente.

Operadores postfijos

Nombre de operador

Notación de operador

Operador de subíndice

[ ]

Operador de llamada de función

( )

operador explícito de la conversión de tipos

nombre de tipo()

operador de acceso a miembros

. o – >

Operador de incremento postfijo

++

Posfije el operador de decremento

––

La sintaxis siguiente describe expresiones posibles postfijo:

primary-expression 
postfix-expression [ expression ]
postfix-expression ( expression-list<SUB>opt</SUB> )
simple-type-name ( expression-list<SUB>opt</SUB> )
postfix-expression . name
postfix-expression –> name
postfix-expression ++
postfix-expression ––
cast-keyword < typename > (expression )
typeid ( typename )

La sufijo-expresión anterior puede ser una expresión primario u otra expresión de sufijo.Vea expresiones primarias.Las expresiones de sufijo agrupan de izquierda a derecha, por lo que las expresiones sean encadenadas juntas como sigue:

func(1)->GetValue()++

En la expresión anterior, funcional es una expresión primaria, func (1) es una expresión de sufijo de la función, (1) >GetData funcional es una expresión sufijo que especifica un miembro de clase, funcional (1) > GetData() es otra expresión de sufijo de la función; la expresión completa es una expresión sufijo que incrementa el valor devuelto GetData.El significado de la expresión de conjunto es la “llamada 1 que pasa funcional como argumento y obtiene un puntero a una clase como valor devuelto.Llame a GetValue() en esa clase, después aumente el valor devuelto.

Las expresiones enumeradas anteriormente son expresiones de asignación, lo que significa que el resultado de estas expresiones debe ser un r-value.

El formato de la expresión de sufijo

simple-type-name ( expression-list )

indica la invocación de constructores.Si el simple-tipo-nombre es un tipo fundamental, la lista de la expresión debe ser una expresión, y esta expresión indica una conversión del valor de la expresión al tipo fundamental.Este tipo de expresión de conversión imita un constructor.Dado que este formulario permite tipos fundamentales y las clases se construyan a partir utilizando la misma sintaxis, este formulario es especialmente útil para definir clases de plantilla.

la conversión-palabra clave es una de dynamic_cast, de static_cast o de reinterpret_cast.Más información se encuentra en dynamic_cast, static_cast y reinterpet_cast.

Vea el operador de typeid una expresión de sufijo.Vea operador typeid.

Vea también

Referencia

Tipos de expresiones