c++中extern關(guān)鍵字的用法是什么

c++
小億
83
2024-01-04 22:25:36

在C++中,extern關(guān)鍵字用于聲明外部變量或函數(shù)的存在。

  1. 對(duì)于變量:當(dāng)我們?cè)谝粋€(gè)文件中定義了一個(gè)全局變量,并且想在另一個(gè)文件中使用該變量時(shí),我們需要在另一個(gè)文件中使用extern關(guān)鍵字來(lái)聲明該變量的存在。這樣,編譯器就知道該變量是在其他文件中定義的,并將其連接起來(lái)。

示例: 在一個(gè)文件中定義全局變量:

// File1.cpp
int globalVariable = 10;

在另一個(gè)文件中使用該變量:

// File2.cpp
extern int globalVariable; // 使用extern關(guān)鍵字聲明全局變量的存在

void someFunction() {
    int localVar = globalVariable; // 使用全局變量
}
  1. 對(duì)于函數(shù):在多個(gè)文件中使用同一個(gè)函數(shù)時(shí),我們需要使用extern關(guān)鍵字來(lái)聲明該函數(shù)的存在。這樣,編譯器就知道該函數(shù)在其他文件中定義,并將其連接起來(lái)。

示例: 在一個(gè)文件中定義函數(shù):

// File1.cpp
void someFunction(); // 函數(shù)聲明

void someFunction() {
    // 函數(shù)定義
}

在另一個(gè)文件中使用該函數(shù):

// File2.cpp
extern void someFunction(); // 使用extern關(guān)鍵字聲明函數(shù)的存在

void anotherFunction() {
    someFunction(); // 調(diào)用函數(shù)
}

總結(jié):extern關(guān)鍵字用于聲明全局變量或函數(shù)在其他文件中的存在。它告訴編譯器在鏈接階段將它們連接起來(lái)。

0