Compartir a través de


Nueva declaración de nombres typedef

La declaración 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 typedef para el nombre CHAR. Mientras las declaraciones hagan referencia al mismo tipo, se puede volver a declarar el nombre.

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

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

el compilador genera un error debido al intento de volver a declarar el nombre CHAR para hacer referencia a un tipo diferente. Esto se aplica también 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

typedef (Especificador)