Moin moin, Am Monday 12 January 2004 11:15 schrieb Stefan Hundhammer:
On Sunday 11 January 2004 21:19, Daniel Feist wrote:
Ich bin vor kurzem von C in C++ umgestiegen und habe folgende Frage:
Was hat es mit diesem "using namespace std"
Tu's nicht!
Shit, muss ich alles wieder ändern ;(
Sinn und Zweck von Namespaces ist es, genau das zu vermeiden. Man soll eben NICHT für alles und jedes stillschweigend davon ausgehen, daß es zur C++ -Standardbibiliothek gehört.
Grrrr, viele meiner Bücher benutzen das zuhauf' in main()!
using namespace std;
ist Schweinkram. Das gibt es eigentlich nur, um alten, kaputten Code am Laufen zu halten. Für neuen Code sollte man das tunlichst vermeiden.
Bislang habe ich "using namespace std" als feature benutzt, um eben weniger zu tippen. So, ich habe das mal nachgelesen und Ihr habt natürlich Recht! -----C++ Einführung in die professionelle Programmierung, S. 422---- Um Namenskonflikte zu vermeiden, ist es grundsätzlich empfehlenswert, für ein Projekt Namespaces zu definieren und zu benutzen. Besonders wichtig ist dies beim Schreiben von Bibliotheken. Bei der Benutzung sollte die selektive Auswahl wie etwa bei "std::cout" bevorzugt werden. In Header- und Implementierungsdateien für Klassen sollte "using namespace std;" vermieden werden, damit Benutzer dieser Klassen nicht gezwungenermaßen "std erben". In main()- Dateien ist die Verwendung hingegen unproblematisch. --------------------------------------------- Puuuh, da habe ich ja wiedermal Glück, wonaders als in main() benutze ich das nicht. Danke für die Erläuterungen... Andre