Compartir a través de


La nueva declaración de nombres typedef

La declaración de typedef se puede utilizar para volver a declarar el mismo nombre para hacer referencia al mismo tipo.Por ejemplo:

// FILE1.H
typedef char CHAR;

// FILE2.H
typedef char CHAR;

// PROG.CPP
#include "file1.h"
#include "file2.h"   // OK

el programa PROG.CPP incluye dos archivos de encabezado, que contienen las declaraciones de typedef para el nombre CHAR.Mientras las declaraciones hacen referencia al mismo tipo, por la nueva declaración es aceptable.

typedef no puede volver a definir un nombre que se declaró previamente como tipo diferente.Por consiguiente, si FILE2.H contiene

// FILE2.H
typedef int CHAR;     // Error

el compilador emite un error debido al intento para volver a declarar el nombre CHAR de referirse a un tipo diferente.Esto extiende a las construcciones como:

typedef char CHAR;
typedef CHAR CHAR;      // OK: redeclared as same type

typedef union REGS      // OK: name REGS redeclared
{                       //  by typedef name with the
    struct wordregs x;  //  same meaning.
    struct byteregs h;
} REGS;

Vea también

Referencia

especificador typedef