Declarantes de resumen de C++
Un declarador abstracto es un declarador en el que se omite el identificador.(Para obtener información relacionada, vea nombres de tipo y declarantes) los declarantes de no abstracta de While se utilizan en la declaración de objetos o funciones, eliminando desproteger el identificador salen sólo la información de tipo.Así, los declarantes abstractos tienen el efecto de modificar un tipo base como char para especificar tipo más complejo como puntero a char o matriz char.Como tal, siempre se utilizan junto con un nombre de tipo base y solo se usan para cuando se llama a un tipo de puntero, de matriz o de referencia (puntero incluidos a trabajar devuelve el tipo base).Los declarantes abstractos correspondiente al siguiente en esta sección se explican:
Un declarador abstracto es un enumeration que no declara un nombre — el identificador se deja out.Por ejemplo,
char *
especifica el puntero de tipo para escribir char.El nombre de tipo consta del nombre char de tipo base más el declarador abstracto *.
De igual forma, el declarador abstracto para una referencia es y operador, y un tipo de matriz se especifica mediante corchetes.Cualquier tipo pueden especificar simplemente aplicando la sintaxis para el declarador y quitar el identificador.
char & // reference to char
char[5] // array of char
A continuación se muestra un uso más complicado de un declarador abstracto que declare el puntero de tipo a una función que toma dos argumentos, ambos **char ***con tipo, y devuelve el tipo char *:
char * (*)( char *, char * )
Junto con el especificador de tipo base, los declarantes abstractos declaran completamente un tipo.Los nombres de tipo construidos de declarantes abstractos se pueden utilizar donde un tipo se llama para:
// Get the size of array of 10 pointers to type char.
size_t nSize = sizeof( char *[10] );
// cast fptr to pointer to function that takes two arguments, both of type
// pointer to char
i = (char * (*)(char*, char*)) fptr;
especificador typedef se puede utilizar para evitar repetir la sintaxis de una declarantes abstractos.