在C++中,extern聲明用于在一個文件中引用另一個文件中定義的全局變量、函數或者對象。通過使用extern關鍵字,可以告訴編譯器該變量、函數或者對象的定義在其他文件中,而不是當前文件中。
extern聲明可以有兩種方式:
extern int globalVariable; // 聲明一個全局變量,定義在其他文件中
extern void function(); // 聲明一個函數,定義在其他文件中
extern MyClass object; // 聲明一個對象,定義在其他文件中
正確的使用extern聲明的方式是在一個文件中進行聲明,在另一個文件中進行定義。例如,如果在一個文件中聲明了一個全局變量,那么在另一個文件中應該進行變量的定義:
// File1.cpp
extern int globalVariable; // 聲明全局變量
// File2.cpp
int globalVariable = 10; // 定義全局變量
注意:extern關鍵字只是表示該變量、函數或者對象的定義在其他文件中,并不是必須使用extern關鍵字來進行聲明。有時候,在C++中可以直接在一個文件中進行定義,而無需使用extern關鍵字進行聲明。這種情況下,編譯器會將變量、函數或者對象的定義視為全局的。