共用方式為


Redeclaration 的 typedef 名稱

typedef宣告可以用來重新宣告以參考相同的型別相同的名稱。 例如:

// FILE1.H
typedef char CHAR;

// FILE2.H
typedef char CHAR;

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

程式的程式中。CPP 包含兩個標頭檔,兩者都包含typedef宣告名稱CHAR。 兩個宣告會參考相同的型別,因為這類重複是可接受的。

A typedef無法重新定義一個先前被宣告為其他類型的名稱。 因此,如果 2 小時。H 包含

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

編譯器會發出錯誤因嘗試重新宣告名稱CHAR以指向不同的型別。 這延伸建構類似:

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;

請參閱

參考

typedef 規範