La portée des variables (partie 2)




c ++, variables locales et globales, la portée des variables, c ++ débutants, espace de nomsVous avez été présenté au premier article sur le sujet variables locales et globales. Le champ d'application en C ++. Хотелось бы ещё немного дополнить её. А именно примером с пространствами имен. J'ai écrit un préfixe est pas en vain std:: avant l'instruction de sortie cout. et endl. Il est également l'une des possibilités de formations – espace de noms. Si tu ne vas pas dans les détails spécifiques, espace de noms, est un groupe d'opérateurs / fonction / les variables / types, unis dans cette déclaration “fraction” nommé std.

std espace de noms du fichier d'en-tête (header dans notre) iostream. cout, gin, endl et al. – tout cela “dynastie” std. Si vous ne branchez dans le code et écrivez std:: avant que ces opérateurs, C ++ dira “de laisser le revoir”. Parce qu'il ne sait pas, quelle est cette cout sans “nom de famille”. En passant en C ++ et inventé l'opérateur using namespace, который позволяет не писать имя пространства в качестве префикса к каждому входящему в него оператору . Cela se fait pour plus de commodité, mais vous devez veiller à ce que l'opérateur, s'il existe une fonction du même nom utilisé dans le programme à partir de différents espaces de noms.

espace de noms bien là, où il est nécessaire de regrouper quelque chose dans la zone de visibilité par le nom. Par exemple, dans le programme deux fonctions différentes peuvent être décrites par somme(). On retourne un entier, deuxième réelle. Si la tâche ne peut pas être décrit comme surchargé, il peut être vissé dans l'espace de noms:

L'espace de noms définit un champ ici pour diverses fonctions avec le même nom. À l'extérieur n'existe pas l'espace de nommage de ces fonctions,.

c ++, variables locales et globales, la portée des variables, c ++ débutants, espace de noms

En général, un espace de noms peut devenir un point de discorde concernant la portée de la théorie. En fait, il est juste un groupe nommé, mais il a le même effet, ainsi qu'un bloc d'instructions {…}. Хочешь обратиться к операторам из этого пространства – être bon pour prendre la première à l'espace de nom: entier :: somme() Тут двоеточие :: – une extension de l'opérateur du champ d'application.

Peut-être le dernier, nous pouvons dire – le champ d'application est très révélatrice de l'OLP (Programmation Orientée Objet). quand classe programmeur décrit privé propriété (méthode variable ou une fonction), il lui demande de portée. Par exemple, dans le code de type:

propriétés k et kc Ils ont des portées différentes. Le premier est disponible uniquement dans les méthodes de classe. Car il ne peut pas être consulté dans le programme principal, il est privé (privé ). Fermé à tous, sauf dans la zone de visibilité de la classe.

La seconde publique (public). Её область видимости выходит за пределы класса. À partir du programme, qui sera appelé un objet de cette classe est disponible.

c ++, variables locales et globales, la portée des variables, c ++ débutants, espace de noms

kc Il est déclaré comme une variable publique, son champ d'application, à la différence du changement k , plus. Par conséquent, le compilateur ne pas contre son utilisation en dehors de la classe.

Que pouvons-nous tirer de tout cette conclusion? Geeks écume à la bouche en criant sur tous les portails – “A bas les variables globales!”. Connaisseurs comme pour limiter la portée de visibilité, la localisation et l'emballage tout en classes ou namespaces. Geeks ont booms. Le programmeur ne doit pas abuser de la portée, ne pas obtenir, interprétation, quand pour faire référence à une variable que vous devez écrire le chemin. à savoir. quelque chose comme mon nom::groupe 1::PeremenkiDlaPrepoda::je Ну жесть просто.

L'utilisation de variables globales, ainsi que le local devrait être judicieusement – le cas échéant écrire mondiale. Lorsqu'il n'y a pas – localiser.

Si vous ne l'avez pas regardé la vidéo sur le sujet champ d'application en C ++ dans la leçon précédente – spécialement pour vous de placer ici:

Bulletin de nouvelles leçons sur la programmation:

La portée des variables (partie 2)
5 (100%) 2 votes

Laisser un commentaire

Votre adresse email ne sera pas publiée. les champs requis sont indiqués *