Ich verwende die 'using'-Deklaration in C ++, um dem lokalen Namespace std :: string und std :: vector hinzuzufügen (um unnötige' std :: 's einzugeben).
using std::string;
using std::vector;
class Foo { /*...*/ };
Was ist der Umfang dieser Erklärung? Wenn ich dies in einem Header mache, werden diese 'using'-Deklarationen in jede cpp-Datei eingefügt, die den Header enthält?
usingErklärung (erst recht Richtlinie ) in einem Header überhaupt , sogar innerhalb eines Namespace! Informationen zu den dadurch verursachten Problemen finden Sie im Anwendungsbereich der Deklaration in einem Namespace .
usingim Klassen- und Funktionsumfang ist in Bezug auf das besprochene Problem sicher.
usingDeklaration (oderusingDirektive) in den Dateibereich einer Include-Datei / eines Include-Headers ein! Dies bereitet den Benutzern des Headers Kopfschmerzen.