Hypercell ein ] Hypercell aus ] Zeige Navigation ] Verstecke Navigation ]
c++.de  
   

Die mobilen Seiten von c++.de:
http://m.c-plusplus.de
Infos hier [BETA]

  
c++.de :: C++ (auch C++0x und C++11) ::  Summe geht nicht  
Gehen Sie zu Seite Zurück  1, 2, 3  Weiter
  Zeige alle Beiträge auf einer Seite
Auf Beitrag antworten
Autor Nachricht
Unregistrierter





Beitrag Unregistrierter 21:57:10 03.08.2012   Titel:              Zitieren

SeppJ schrieb:
Gugelmoser schrieb:
amichian schrieb:
Warum hast du in deinem Code nicht die Codezeile "using namespace std;" nicht eingefügt, um das aufwendige Schreiben von "std::" vor jedem cin oder cout zu vermeiden?
Es macht keinen Sinn, einen Namensraum zu definieren, nur um ihn dann wieder mit einer using-Direktive auszuleeren. Darum macht man es nicht.
Warum? Wenn man weiß, dass man keine Konflikte verursacht ist das völlig legitim.
Finde ich nicht. Ein Namensraum ist ja auch nicht dafür da, um Konflikte zu vermeiden. :p
BlauesShirt
Unregistrierter




Beitrag BlauesShirt Unregistrierter 20:57:14 04.08.2012   Titel:              Zitieren

Gugelmoser schrieb:
Finde ich nicht. Ein Namensraum ist ja auch nicht dafür da, um Konflikte zu vermeiden. :p

Wofür denn, wenn ich fragen darf?
Sone
Mitglied

Benutzerprofil
Anmeldungsdatum: 29.05.2012
Beiträge: 3142
Beitrag Sone Mitglied 21:08:59 04.08.2012   Titel:              Zitieren

BlauesShirt schrieb:
Gugelmoser schrieb:
Finde ich nicht. Ein Namensraum ist ja auch nicht dafür da, um Konflikte zu vermeiden. :p

Wofür denn, wenn ich fragen darf?


Ordnung.

_________________
You want to do X, and you think Y is the best way of doing so. Instead of asking about X, you ask about Y. | Wenn man was zum Lachen braucht: Why C++ Sucks
Kellerautomat
Mitglied

Benutzerprofil
Anmeldungsdatum: 03.06.2012
Beiträge: 899
Beitrag Kellerautomat Mitglied 23:50:11 04.08.2012   Titel:              Zitieren

Bullshit.
qeweretwret
Unregistrierter




Beitrag qeweretwret Unregistrierter 09:40:57 05.08.2012   Titel:              Zitieren

Gugelmoser schrieb:
SeppJ schrieb:
Gugelmoser schrieb:
amichian schrieb:
Warum hast du in deinem Code nicht die Codezeile "using namespace std;" nicht eingefügt, um das aufwendige Schreiben von "std::" vor jedem cin oder cout zu vermeiden?
Es macht keinen Sinn, einen Namensraum zu definieren, nur um ihn dann wieder mit einer using-Direktive auszuleeren. Darum macht man es nicht.
Warum? Wenn man weiß, dass man keine Konflikte verursacht ist das völlig legitim.
Finde ich nicht. Ein Namensraum ist ja auch nicht dafür da, um Konflikte zu vermeiden. :p


So ein Quatsch.
Namensräume kann man in Cpp-Dateien grundsätzlich ausschütten. Sollte es zum Konflikt kommen, was nicht oft der Fall ist, geht man den umständlichen Weg.
knivil
Mitglied

Benutzerprofil
Anmeldungsdatum: 11.02.2009
Beiträge: 5851
Beitrag knivil Mitglied 10:14:03 05.08.2012   Titel:              Zitieren

Kommt drauf an.

Ich habe beispielsweise im namespace geometry eine Linienklasse und im namespace raster. Damit an der Deklaration von Variablen gleich sichtbar wird, um welche der beiden es sich handel, oeffene ich diesen Namensraum nicht, auch wenn nur eine Lienenart benutzt wird.

_________________
If it were not for laughter, there would be no Tao.
Sie können einen Beitrag nicht so schnell nach Ihrem letzten absenden, bitte warten Sie einen Augenblick.
Sone
Mitglied

Benutzerprofil
Anmeldungsdatum: 29.05.2012
Beiträge: 3142
Beitrag Sone Mitglied 12:30:38 05.08.2012   Titel:              Zitieren

Sone schrieb:
Ordnung.

Kellerautomat schrieb:
Bullshit.


Damit hast du mal selbst argumentiert :rolleyes:

_________________
You want to do X, and you think Y is the best way of doing so. Instead of asking about X, you ask about Y. | Wenn man was zum Lachen braucht: Why C++ Sucks


Zuletzt bearbeitet von Sone am 12:31:12 05.08.2012, insgesamt 1-mal bearbeitet
Eisflamme
Mitglied

Benutzerprofil
Anmeldungsdatum: 26.06.2009
Beiträge: 2871
Beitrag Eisflamme Mitglied 12:55:37 05.08.2012   Titel:              Zitieren

Also bei größeren Projekten finde ich namespaces schon praktisch, weil man dadurch eben nochmal eine Ordnung in dem Sinne schaffen kann, dass man weiß, dass gewisse Klassen eben zu einem "Komplex" gehören. Selbst wenn es sich um irgendeinen Spezialbereich handelt, in dem es keine Namensüberschneidungen gibt, ist es einfach angenehmer zu wissen, was wozu gehört.

Und dann können die namespaces auch kongruent zu anderen Ordnungselementen stehen, beispielsweise zur Ordnerstruktur im Dateisystem (oder zusätzlich auch im MSVC-Projekt) oder auch zu Modulen, die einzeln kompiliert werden können.

Namenskonflikte gehen in meinen Augen aus fehlender Struktur/Ordnung hervor, sodass namespaces dieses Problem quasi im Keim ersticken.

_________________
www.mihahome.de - Texte zu Englisch, Geographie sowie Präsentationen und Lesenswertes
Kellerautomat
Mitglied

Benutzerprofil
Anmeldungsdatum: 03.06.2012
Beiträge: 899
Beitrag Kellerautomat Mitglied 15:18:20 05.08.2012   Titel:              Zitieren

Sone schrieb:
Damit hast du mal selbst argumentiert :rolleyes:

Es stimmt schon, dass namespaces Ordnung schaffen koennen, aber das ist nicht ihr Hauptnutzen. Ihr beide habt das so hingestellt, als ware das deren einziger Zweck, und das ist einfach nicht wahr.
Sone
Mitglied

Benutzerprofil
Anmeldungsdatum: 29.05.2012
Beiträge: 3142
Beitrag Sone Mitglied 15:56:41 05.08.2012   Titel:              Zitieren

Kellerautomat schrieb:
Sone schrieb:
Damit hast du mal selbst argumentiert :rolleyes:

Es stimmt schon, dass namespaces Ordnung schaffen koennen, aber das ist nicht ihr Hauptnutzen. Ihr beide habt das so hingestellt, als ware das deren einziger Zweck, und das ist einfach nicht wahr.


Konfliktvermeidung lässt sich in diesem Kontext auch auf Ordnung deduzieren, denn die Logik hierbei ist folgende:

Ordnung :arrow: Keine Konflikte :live:
Keine Ordnung :arrow: Es gibt Konflikte, weil die verschiedenen Namen nicht in Namensräumen eingeordnet wurden. :warning:

Ein Namensraum ist schließlich wie eine Mappe, in der andere Mappen (andere Namensräume) oder eben auch Zettel (Namen) sind. Schmeisst man stattdessen alle Zettel in eine Mappe (Globaler Namespace), wird es unordentlich.

_________________
You want to do X, and you think Y is the best way of doing so. Instead of asking about X, you ask about Y. | Wenn man was zum Lachen braucht: Why C++ Sucks


Zuletzt bearbeitet von Sone am 16:02:50 05.08.2012, insgesamt 1-mal bearbeitet
c++.de :: C++ (auch C++0x und C++11) ::  Summe geht nicht  
Gehen Sie zu Seite Zurück  1, 2, 3  Weiter
Auf Beitrag antworten

Zeige alle Beiträge auf einer Seite




Nächstes Thema anzeigen
Vorheriges Thema anzeigen
Sie können Beiträge in dieses Forum schreiben.
Sie können auf Beiträge in diesem Forum antworten.
Sie können Ihre Beiträge in diesem Forum nicht bearbeiten.
Sie können Ihre Beiträge in diesem Forum nicht löschen.
Sie können an Umfragen in diesem Forum nicht mitmachen.

Powered by phpBB © 2001, 2002 phpBB Group :: FI Theme

c++.de ist Teilnehmer des Partnerprogramms von Amazon Europe S.à.r.l. und Partner des Werbeprogramms, das zur Bereitstellung eines Mediums für Websites konzipiert wurde, mittels dessen durch die Platzierung von Werbeanzeigen und Links zu amazon.de Werbekostenerstattung verdient werden kann.

Die Vervielfältigung der auf den Seiten www.c-plusplus.de, www.c-plusplus.info und www.c-plusplus.net enthaltenen Informationen ohne eine schriftliche Genehmigung des Seitenbetreibers ist untersagt (vgl. §4 Urheberrechtsgesetz). Die Nutzung und Änderung der vorgestellten Strukturen und Verfahren in privaten und kommerziellen Softwareanwendungen ist ausdrücklich erlaubt, soweit keine Rechte Dritter verletzt werden. Der Seitenbetreiber übernimmt keine Gewähr für die Funktion einzelner Beiträge oder Programmfragmente, insbesondere übernimmt er keine Haftung für eventuelle aus dem Gebrauch entstehenden Folgeschäden.