Warum funktioniert "extern const int n;" nicht wie erwartet?

Mein Projekt besteht nur aus zwei Quelldateien:

a.cpp:

const int n = 8;

b.cpp:

extern const int n;

int main()
{
    // error LNK2001: unresolved external symbol "int const n" (?n@@3HB)
    int m = n; 
}

Ich weiß, dass es verschiedene Methoden gibt, damit es funktioniert. Ich frage mich nur, warum es nicht funktioniert.

Antworten auf die Frage(5)

Ihre Antwort auf die Frage