En C, les variables membres const déclarées dans la portée de l'espace de noms présentent un comportement de liaison interne, contrairement à C où elles auraient une liaison externe . Pour clarifier, le lien interne implique que l'identifiant ne peut être utilisé que dans l'unité de traduction où il est déclaré, tandis que le lien externe permet aux identifiants d'être référencés dans plusieurs unités de traduction.
Cette distinction est née spécifiquement en raison de la nature unique des objets const en C . Comme expliqué dans l'annexe C de la norme C 11 (C.1.2), la capacité des objets const à servir de constantes au moment de la compilation a entraîné une dérogation au comportement de style C. En utilisant par défaut une liaison interne pour les objets de portée d'espace de noms const, C encourage les programmeurs à fournir des valeurs d'initialisation explicites et permet une inclusion pratique d'objets const dans les fichiers d'en-tête référencés dans plusieurs unités de compilation.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!