In C zeigen im Namespace-Bereich deklarierte const-Mitgliedsvariablen ein internes Verknüpfungsverhalten, anders als in C, wo sie eine externe Verknüpfung hätten . Zur Verdeutlichung bedeutet die interne Verknüpfung, dass der Bezeichner nur innerhalb der Übersetzungseinheit verwendet werden kann, in der er deklariert ist, während die externe Verknüpfung die Referenzierung von Bezeichnern über mehrere Übersetzungseinheiten hinweg ermöglicht.
Diese Unterscheidung entstand speziell aufgrund der Einzigartigkeit von const-Objekten in C . Wie in Anhang C des C 11-Standards (C.1.2) erläutert, führte die Fähigkeit von const-Objekten, als Konstanten zur Kompilierungszeit zu dienen, zu einer Abkehr vom Verhalten im C-Stil. Durch die standardmäßige interne Verknüpfung für const-Namespace-Gültigkeitsobjekte ermutigt C Programmierer, explizite Initialisierungswerte bereitzustellen und ermöglicht die bequeme Einbindung von const-Objekten in Header-Dateien, auf die in mehreren Kompilierungseinheiten verwiesen wird.
Das obige ist der detaillierte Inhalt vonWarum haben „const'-Namespace-Scope-Variablen in C eine interne Verknüpfung?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!