Différence entre module et namespace

Résolu
Signaler
Messages postés
288
Date d'inscription
mardi 2 mai 2006
Statut
Membre
Dernière intervention
12 octobre 2011
-
Messages postés
3834
Date d'inscription
dimanche 12 décembre 2004
Statut
Modérateur
Dernière intervention
20 octobre 2021
-
Bonjour,

Quelqu'un peut me dire quelle est la différence entre un module et un namespace en CPP ?

Selon ce document, on appelle ça carrément "module namespace". Comme si c'était la même chose.
http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2005/n1778.pdf

Je me demande donc, si c'est la même chose, ou c'est deux concepts différents.

Merci d'avance =)

Think about it, Code it, Debug it, Enjoy it.

1 réponse

Messages postés
3834
Date d'inscription
dimanche 12 décembre 2004
Statut
Modérateur
Dernière intervention
20 octobre 2021
124
Bonjour.

En C++, il n'y a pas de système de module, tout simplement.
Je pense que dans ce document, l'auteur confond la notion d'espace de nom, de module et d'inclusion.

Un module est une unité d'importation, un peu comme un include mais en plus intelligent (genre les import du java).
L'include est un pseudo-module. Puisqu'au final, avant de compiler, tous les includes sont insérés dans un seul et unique fichier, qui est compilé (c'est pseudo modulaire).
Quant aux espaces de nom, c'est une notion qui n'est lié ni au modules, ni au fichiers. C'est un simple système de nomination, qui permet de découper son code en partie logique.

________________________________________________________________________
Historique de mes créations, et quelques articles:
[ http://0217021.free.fr/portfolio http://0217021.free.fr/portfolio]
Merci d'utiliser Réponse acceptée si un post répond à votre question