Envisager une paire de deux fichiers source: une interface fichier de déclaration (*.h
ou *.hpp
) et son fichier d'implémentation (*.cpp
).
Laissez l' *.h
fichier comme suit:
namespace MyNamespace {
class MyClass {
public:
int foo();
};
}
J'ai vu deux types de pratiques pour l'utilisation des espaces de noms dans les fichiers sources:
*.cpp
montrant pratique #1:
#include "MyClass.h"
using namespace MyNamespace;
int MyClass::foo() { ... }
*.cpp
montrant pratique #2:
#include "MyClass.h"
namespace MyNamespace {
int MyClass::foo() { ... }
}
Ma question: existe-il des différences entre ces deux pratiques et est considéré comme l'un meilleur que l'autre?