Betrachten Sie ein Paar von zwei Quelldateien: eine Schnittstellendeklarationsdatei ( *.h
oder *.hpp
) und ihre Implementierungsdatei ( *.cpp
).
Lassen Sie die *.h
Datei wie folgt aussehen:
namespace MyNamespace {
class MyClass {
public:
int foo();
};
}
Ich habe zwei verschiedene Methoden zur Verwendung von Namespaces in Quelldateien gesehen:
*.cpp
Übung 1 zeigen:
#include "MyClass.h"
using namespace MyNamespace;
int MyClass::foo() { ... }
*.cpp
Übung 2 zeigen:
#include "MyClass.h"
namespace MyNamespace {
int MyClass::foo() { ... }
}
Meine Frage: Gibt es Unterschiede zwischen diesen beiden Praktiken und wird eine als besser angesehen als die andere?
int MyNamespace::MyClass::foo() ...
.