<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Verwendung von Namespaces in eigenen Projekten]]></title><description><![CDATA[<p>Es interessiert mich, wie ihr Namespaces in euren Projekten verwendet. Natürlich nur in Projekten einer gewissen Größe, so dass Namespaces (theoretisch) Sinn machen. Aus meiner Sicht gibt es zwei Extrempunkte, die ich in meiner beruflichen Laufbahn beide schon erlebt habe:</p>
<p>Das eine Projekt verwendete einen Namespace (sagen wir &quot;Abc&quot;), in dem aller Code dieses Projekts liegen musste, sofern es nicht ausnahmsweise besser war (etwa bei <code>operator&lt;&lt;(std::ostream &amp;, const T &amp;)</code> ) den globalen Namespace zu verwenden. Innerhalb von Abc gab es dann für jedes logische Modul des Projekts einen weiteren Namespace, also z.B. Abc::Database, Abc::Model, Abc::Gui, Abc::Aux usw. Alle Fach-Klassen mussten denselben Namen tragen und wurden nur über den Namespace unterschieden, also Abc::Database::Person (für die Tabelle), Abc::Model::Person, Abc::Gui::Person (für den Dialog) usw.</p>
<p>In dem anderen Projekt wurde nur ein Namespace für das Projekt verwendet; es gab keine weiteren Namespaces innerhalb von Abc. (Ok, <strong>noch</strong> extremer wäre es, alles in den globalen Namespace zu legen. Aber so weit wollten wir dann doch nicht gehen) Die Fach-Klassen wurden über Präfixe unterschieden: DBPerson, MdlPerson, DlgPerson usw. Die Präfixe wurden vorher vereinbart.</p>
<p>Was haltet ihr davon? Welche Vor- und Nachteile seht ihr? Was verwendet ihr also in euren Projekten - sofern man euch lässt?</p>
<p>Stefan.</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/246187/verwendung-von-namespaces-in-eigenen-projekten</link><generator>RSS for Node</generator><lastBuildDate>Fri, 18 Sep 2026 07:43:32 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/246187.rss" rel="self" type="application/rss+xml"/><pubDate>Fri, 24 Jul 2009 08:22:06 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Verwendung von Namespaces in eigenen Projekten on Fri, 24 Jul 2009 08:22:06 GMT]]></title><description><![CDATA[<p>Es interessiert mich, wie ihr Namespaces in euren Projekten verwendet. Natürlich nur in Projekten einer gewissen Größe, so dass Namespaces (theoretisch) Sinn machen. Aus meiner Sicht gibt es zwei Extrempunkte, die ich in meiner beruflichen Laufbahn beide schon erlebt habe:</p>
<p>Das eine Projekt verwendete einen Namespace (sagen wir &quot;Abc&quot;), in dem aller Code dieses Projekts liegen musste, sofern es nicht ausnahmsweise besser war (etwa bei <code>operator&lt;&lt;(std::ostream &amp;, const T &amp;)</code> ) den globalen Namespace zu verwenden. Innerhalb von Abc gab es dann für jedes logische Modul des Projekts einen weiteren Namespace, also z.B. Abc::Database, Abc::Model, Abc::Gui, Abc::Aux usw. Alle Fach-Klassen mussten denselben Namen tragen und wurden nur über den Namespace unterschieden, also Abc::Database::Person (für die Tabelle), Abc::Model::Person, Abc::Gui::Person (für den Dialog) usw.</p>
<p>In dem anderen Projekt wurde nur ein Namespace für das Projekt verwendet; es gab keine weiteren Namespaces innerhalb von Abc. (Ok, <strong>noch</strong> extremer wäre es, alles in den globalen Namespace zu legen. Aber so weit wollten wir dann doch nicht gehen) Die Fach-Klassen wurden über Präfixe unterschieden: DBPerson, MdlPerson, DlgPerson usw. Die Präfixe wurden vorher vereinbart.</p>
<p>Was haltet ihr davon? Welche Vor- und Nachteile seht ihr? Was verwendet ihr also in euren Projekten - sofern man euch lässt?</p>
<p>Stefan.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1748688</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1748688</guid><dc:creator><![CDATA[DStefan]]></dc:creator><pubDate>Fri, 24 Jul 2009 08:22:06 GMT</pubDate></item><item><title><![CDATA[Reply to Verwendung von Namespaces in eigenen Projekten on Fri, 24 Jul 2009 08:36:39 GMT]]></title><description><![CDATA[<p>Das zweite ist unschöner aber sicherer.<br />
Denn beim ersten kommt man ziemlich in Konflikte bei nem using namespace...;</p>
<p>Bei mir fangen desweiteren Namspaces immer mit Kleinbuchstaben an, Klassen mit Großbuchstaben.<br />
Z.B.:<br />
abc::database::Person.<br />
Das erleichtert einem ziemlich das Erkennen im Code.<br />
Außerdem macht es das möglich, freie Funktionen die zu einer Klasse gehören in einen passenden namespace zu legen, ohne Konflikte zwischen Klasse/Namespace zu bekommen, wenn man das nicht als static member-Funktion implementieren will.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1748702</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1748702</guid><dc:creator><![CDATA[klabauter]]></dc:creator><pubDate>Fri, 24 Jul 2009 08:36:39 GMT</pubDate></item><item><title><![CDATA[Reply to Verwendung von Namespaces in eigenen Projekten on Fri, 24 Jul 2009 08:41:06 GMT]]></title><description><![CDATA[<blockquote>
<p>Natürlich nur in Projekten einer gewissen Größe, so dass Namespaces (theoretisch) Sinn machen.</p>
</blockquote>
<p>Warum nur in Projekten bestimmter Größe? <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f62e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_open_mouth"
      title=":open_mouth:"
      alt="😮"
    /> Ich benutze immer Namespaces, selbst wenn es nur ein kleines Tool ist. Außnahme sind wirklich nur helloworlds, dummys, prototypen u.ä. Also alles was eh weg geschmissen wird.</p>
<p>Meine Namespace-Ebenen sind sehr flach. D.h. ich habe nur <code>abc::</code> . Eine Ebene tiefer gehe ich nur für Ausnahmefälle, z.B. um zu verdeutlichen, das es sich um einen sehr speziellen Bereich handelt. Für gewöhnlich progge ich nur Platformneutral. Wenn ich aber weiß &quot;Oh, jetzt brauch ich hardcore Win32-Code!&quot;, dann mache ich in dem Fall <code>abc::win32::</code> . Aber das ist schon echt das höchste der Gefühle, was die Ebenenanzahl bei mir angeht. Wenns noch mehr werden soll. Muß man mich schon überzeugen.</p>
<p>Wenn man zu viele Ebenen hat, wird der Code nicht übersichtlicher und lesbarer. Ich überlege mir dann lieber z.B. für die erste Ebene andere Namen, z.B. <code>abc::</code> und <code>xyz::</code> . Man muß da halt kreativ sein. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title=":)"
      alt="🙂"
    /></p>
<p>Was ich auch nicht leiden kann, sind zu lange Namespace-Namen. Dann soll lieber ein Klassen- oder Funktionsname aussagekräftig sein. Davon habe ich mehr Vorteile in der Wartung.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1748703</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1748703</guid><dc:creator><![CDATA[Artchi]]></dc:creator><pubDate>Fri, 24 Jul 2009 08:41:06 GMT</pubDate></item><item><title><![CDATA[Reply to Verwendung von Namespaces in eigenen Projekten on Fri, 24 Jul 2009 09:10:19 GMT]]></title><description><![CDATA[<p>DStefan schrieb:</p>
<blockquote>
<p>sofern es nicht ausnahmsweise besser war (etwa bei <code>operator&lt;&lt;(std::ostream &amp;, const T &amp;)</code> ) den globalen Namespace zu verwenden.</p>
</blockquote>
<p>Warum sollte es dort besser sein, den globalen Namespace zu verwenden? Wenn du den op&lt;&lt; im selben Namespace wie T deklarierst und definierst, wird er immer gefunden (Koenig-Lookup), egal von wo aus er aufgerufen wird.</p>
<pre><code class="language-cpp">namespace foo
{
  class T;
  std::ostream&amp; operator&lt;&lt;(std::ostream&amp; os, T const&amp; t) {/*...*/}
}

namespace bar
{
  void bla
  {
    foo::T t;
    cout &lt;&lt; t; //funktioniert, da durch Koenig-Lookup für Funktionen mit T auch in T's namespace foo gesucht wird
  }
}
</code></pre>
<p>Artchi schrieb:</p>
<blockquote>
<p>Aber das ist schon echt das höchste der Gefühle, was die Ebenenanzahl bei mir angeht. Wenns noch mehr werden soll. Muß man mich schon überzeugen.</p>
</blockquote>
<p>Durch viele Ebenen wirds nicht unbedingt unübersichtlicher im Code. Wenn ich in einem Namespace foo einen Unternamespace bar einrichte, dann meist nur um die Elemente von bar in foo zu benutzen, nicht auf höherer Ebene. Und der Namespace baz innerhalb von bar wird auch nur von bar-Elementen benutzt. Daher wird nie jeman foo::bar::baz::X schreiben müssen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1748723</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1748723</guid><dc:creator><![CDATA[pumuckl]]></dc:creator><pubDate>Fri, 24 Jul 2009 09:10:19 GMT</pubDate></item><item><title><![CDATA[Reply to Verwendung von Namespaces in eigenen Projekten on Fri, 24 Jul 2009 09:26:16 GMT]]></title><description><![CDATA[<p>pumuckl schrieb:</p>
<blockquote>
<p>Durch viele Ebenen wirds nicht unbedingt unübersichtlicher im Code. Wenn ich in einem Namespace foo einen Unternamespace bar einrichte, dann meist nur um die Elemente von bar in foo zu benutzen, nicht auf höherer Ebene. Und der Namespace baz innerhalb von bar wird auch nur von bar-Elementen benutzt. Daher wird nie jeman foo::bar::baz::X schreiben müssen.</p>
</blockquote>
<p>Ja, wenn sich das vermeiden lässt, ist das i.O. Aber das ist halt selten der Fall, weil manche halt einfach nach Kategorien aufteilen.<br />
z.B. foo::gfx und foo::snd, da habe ich bei der Benutzung garantiert regelmäßig die volle Schreibweise. Wobei diese zwei Ebenen wirklich noch erträglich sind.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1748730</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1748730</guid><dc:creator><![CDATA[Artchi]]></dc:creator><pubDate>Fri, 24 Jul 2009 09:26:16 GMT</pubDate></item><item><title><![CDATA[Reply to Verwendung von Namespaces in eigenen Projekten on Fri, 24 Jul 2009 10:07:36 GMT]]></title><description><![CDATA[<p>klabauter schrieb:</p>
<blockquote>
<p>Das zweite ist unschöner aber sicherer.<br />
Denn beim ersten kommt man ziemlich in Konflikte bei nem using namespace...;</p>
</blockquote>
<p>Für mich ist das eher ein Grund <code>using namespace</code> nicht zu verwenden. Das kommt bei mir nicht vor. Unter keinen Umständen.</p>
<p>Die Verwendung von Präfixes statt Namespaces ist allerdings weniger Schreibarbeit.</p>
<p>Stefan.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1748758</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1748758</guid><dc:creator><![CDATA[DStefan]]></dc:creator><pubDate>Fri, 24 Jul 2009 10:07:36 GMT</pubDate></item><item><title><![CDATA[Reply to Verwendung von Namespaces in eigenen Projekten on Fri, 24 Jul 2009 10:10:42 GMT]]></title><description><![CDATA[<p>pumuckl schrieb:</p>
<blockquote>
<p>DStefan schrieb:</p>
<blockquote>
<p>sofern es nicht ausnahmsweise besser war (etwa bei <code>operator&lt;&lt;(std::ostream &amp;, const T &amp;)</code> ) den globalen Namespace zu verwenden.</p>
</blockquote>
<p>Warum sollte es dort besser sein, den globalen Namespace zu verwenden? Wenn du den op&lt;&lt; im selben Namespace wie T deklarierst und definierst, wird er immer gefunden (Koenig-Lookup), egal von wo aus er aufgerufen wird.</p>
</blockquote>
<p>Außer, der Code muss (auch) für so 'ne alte Karre wie VC6 funktionieren. Kommt leider noch immer vor.</p>
<p>Stefan.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1748761</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1748761</guid><dc:creator><![CDATA[DStefan]]></dc:creator><pubDate>Fri, 24 Jul 2009 10:10:42 GMT</pubDate></item><item><title><![CDATA[Reply to Verwendung von Namespaces in eigenen Projekten on Fri, 24 Jul 2009 10:14:05 GMT]]></title><description><![CDATA[<p>DStefan schrieb:</p>
<blockquote>
<p>Für mich ist das eher ein Grund <code>using namespace</code> nicht zu verwenden. Das kommt bei mir nicht vor. Unter keinen Umständen.</p>
</blockquote>
<p>So lange das ein geschlossenes Projekt ist, ist es ja in Ordnung. Aber lass das mal ne lib werden, die andere User verwenden. Gute Nacht <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /><br />
Ich denke das war mit ein Grund, warum Qt von v2-&gt;v3 den namespace Qt:: abgeschafft haben und ihre Klassen nur noch mit nem Präfix versehen <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f603.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--grinning_face_with_big_eyes"
      title=":D"
      alt="😃"
    /></p>
<pre><code class="language-cpp">class MainWindow : public Qt::MainWindow
{ /// };

// dann wird das wo verwendet:

#include MainWindow.h
using namespace Qt;
///...
MainWindow win; // welches MainWIndow ist das jetzt?
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1748765</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1748765</guid><dc:creator><![CDATA[klabauter]]></dc:creator><pubDate>Fri, 24 Jul 2009 10:14:05 GMT</pubDate></item><item><title><![CDATA[Reply to Verwendung von Namespaces in eigenen Projekten on Fri, 24 Jul 2009 10:32:02 GMT]]></title><description><![CDATA[<p>klabauter schrieb:</p>
<blockquote>
<p>DStefan schrieb:</p>
<blockquote>
<p>Für mich ist das eher ein Grund <code>using namespace</code> nicht zu verwenden. Das kommt bei mir nicht vor. Unter keinen Umständen.</p>
</blockquote>
<p>So lange das ein geschlossenes Projekt ist, ist es ja in Ordnung. Aber lass das mal ne lib werden, die andere User verwenden. Gute Nacht <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /><br />
Ich denke das war mit ein Grund, warum Qt von v2-&gt;v3 den namespace Qt:: abgeschafft haben und ihre Klassen nur noch mit nem Präfix versehen <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f603.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--grinning_face_with_big_eyes"
      title=":D"
      alt="😃"
    /></p>
<pre><code class="language-cpp">class MainWindow : public Qt::MainWindow
{ /// };

// dann wird das wo verwendet:

#include MainWindow.h
using namespace Qt;
///...
MainWindow win; // welches MainWIndow ist das jetzt?
</code></pre>
</blockquote>
<p>Also für mich ist das eher ein Beispiel dafür, warum <code>using namespace</code> &quot;böse&quot; ist.</p>
<p>Spannender finde ich folgendes Beispiel:</p>
<pre><code class="language-cpp">namespace Foo {

class MainWindow {

protected:
   MainWindow(int id);
};

}   // namespace Foo

class MainWindow: public Foo::MainWindow {

public:
   MainWindow()
      : Foo::MainWindow(1)   // &lt;&lt;&lt; Hier britzelt's
   {
   }
};
</code></pre>
<p>Mindestens zwei meiner Compiler (mehr hab ich nicht damit konfrontiert) kriegen hierbei nen dicken Hals.<br />
Man muss sich mit einem typedef behelfen:</p>
<pre><code class="language-cpp">class MainWindow: public Foo::MainWindow {

   typedef Foo::MainWindow Base;

public:
   MainWindow()
      : Base(1)
   {
   }
};
</code></pre>
<p>Bloß was folgt daraus? Soll man besser keinen Namespace verwenden oder ist derjenige einfach ein Idiot, der für die Unterklasse denselben Namen wie die Oberklasse verwendet?</p>
<p>Ich meine übrigens, dass eine Library unbedingt in einem Namespace liegen sollte. In Qt nur Präfixes zu verwenden, ist für mich eine Fehlentscheidung.</p>
<p>Stefan.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1748776</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1748776</guid><dc:creator><![CDATA[DStefan]]></dc:creator><pubDate>Fri, 24 Jul 2009 10:32:02 GMT</pubDate></item><item><title><![CDATA[Reply to Verwendung von Namespaces in eigenen Projekten on Fri, 24 Jul 2009 10:40:43 GMT]]></title><description><![CDATA[<p>DStefan schrieb:</p>
<blockquote>
<p>Bloß was folgt daraus? Soll man besser keinen Namespace verwenden oder ist derjenige einfach ein Idiot, der für die Unterklasse denselben Namen wie die Oberklasse verwendet?</p>
</blockquote>
<p>Letzteres <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title=":)"
      alt="🙂"
    /> In Ausnahmefällen kann man auch getrost auf den typedef zurückgreifen, wenns wirklich mal sinnfrei ist sich einen anderen Namen auszudenken (weils keinen passenderen gibt).</p>
<blockquote>
<p>Ich meine übrigens, dass eine Library unbedingt in einem Namespace liegen sollte. In Qt nur Präfixes zu verwenden, ist für mich eine Fehlentscheidung.</p>
</blockquote>
<p>Absolut. Den Namespace durch einen Präfix zu ersetzen ist ein Schritt nach hinten in die C-Zeiten wo sowas üblich war. Beim Tippen ist der Unterschied vernachlässigbar, ob man nun <code>QT::Wurst</code> oder <code>QT_Wurst</code> schreibt. Der Präfix nimmt dem Entwickler dafür die Möglichkeit, eine (vernünftig gewählte, räumlich beschränkte) using-Direktive zu nutzen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1748784</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1748784</guid><dc:creator><![CDATA[pumuckl]]></dc:creator><pubDate>Fri, 24 Jul 2009 10:40:43 GMT</pubDate></item><item><title><![CDATA[Reply to Verwendung von Namespaces in eigenen Projekten on Fri, 24 Jul 2009 10:48:34 GMT]]></title><description><![CDATA[<p>DStefan schrieb:</p>
<blockquote>
<p>Also für mich ist das eher ein Beispiel dafür, warum <code>using namespace</code> &quot;böse&quot; ist.</p>
</blockquote>
<p>Argh, das mein ich doch auch! <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f603.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--grinning_face_with_big_eyes"
      title=":D"
      alt="😃"
    /><br />
Nur kannst du nicht verhindern, dass $UNERFAHRENER_USER das nicht macht <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title=":)"
      alt="🙂"
    /><br />
Aber im Eneffekt bist ja du eh nicht der böse, wenn der User Stuss baut, denn dein Lib selber kompiliert, egal was der User treibt.<br />
Nur musst du dich evtl. bei gleichen Klassennamen in verschiedenen namspaces auf einige lustige SUpportanfragen einstellen <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f603.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--grinning_face_with_big_eyes"
      title=":D"
      alt="😃"
    /></p>
<p>DStefan schrieb:</p>
<blockquote>
<p>Bloß was folgt daraus? Soll man besser keinen Namespace verwenden oder ist derjenige einfach ein Idiot, der für die Unterklasse denselben Namen wie die Oberklasse verwendet?</p>
<p>Ich meine übrigens, dass eine Library unbedingt in einem Namespace liegen sollte. In Qt nur Präfixes zu verwenden, ist für mich eine Fehlentscheidung.</p>
</blockquote>
<p>namespace ist die einzige richtige Entscheidung, denke ich auch. Und in der Doku darauf hinweisen using namespace abc::database doch bleiben zu lassen...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1748792</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1748792</guid><dc:creator><![CDATA[klabauter]]></dc:creator><pubDate>Fri, 24 Jul 2009 10:48:34 GMT</pubDate></item><item><title><![CDATA[Reply to Verwendung von Namespaces in eigenen Projekten on Fri, 24 Jul 2009 11:43:56 GMT]]></title><description><![CDATA[<p>DStefan schrieb:</p>
<blockquote>
<p>Außer, der Code muss (auch) für so 'ne alte Karre wie VC6 funktionieren. Kommt leider noch immer vor.</p>
</blockquote>
<p>Naja... Wenn ich explizit FORTRAN77 schreiben soll, kann ich die Features von FORTRAN90 nicht allesamt nutzen. Wenn ich K&amp;R-C schreiben soll kann ich mit C99 Sprachfeatures Probleme bekommen. Und wenn ich für den VC6 Compiler programmiere darfs eben kein Standard-C++ sein...<br />
Man mag sich jetzt streiten ab wann man einen Compiler als standardkonform bezeichnen darf (95% der Features? 99%? 100% wird wohl kaum einer schaffen), aber der VC6 gehört mit Sicherheit nicht dazu. Und da es sich hier im Forum nunmal um Standard-C++ dreht halte ich es für unnütz, bei jeder zweiten Problemlösung einen Disclaimer dranzuschreiben &quot;es sei denn du benutzt den uralt-Compiler von XY, dann musst du Workaround ZZ01 benutzen&quot;.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1748829</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1748829</guid><dc:creator><![CDATA[pumuckl]]></dc:creator><pubDate>Fri, 24 Jul 2009 11:43:56 GMT</pubDate></item><item><title><![CDATA[Reply to Verwendung von Namespaces in eigenen Projekten on Fri, 24 Jul 2009 11:52:06 GMT]]></title><description><![CDATA[<p>Wer benutzt denn freiwillig VC6, außer er hat ein solch altes VC6-Projekt, das er aus irgendwelchen ominösen Gründen nicht auf einen aktuellen Standard portieren kann?<br />
Das im Standard-C++-Forum überhaupt der VC6 erwähnung findet, grenzt schon an Blasphemie! Holt Eure Mistgabeln raus! <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/26a0.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--warning"
      title=":warning:"
      alt="⚠"
    /> <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1748836</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1748836</guid><dc:creator><![CDATA[Artchi]]></dc:creator><pubDate>Fri, 24 Jul 2009 11:52:06 GMT</pubDate></item><item><title><![CDATA[Reply to Verwendung von Namespaces in eigenen Projekten on Fri, 24 Jul 2009 12:02:24 GMT]]></title><description><![CDATA[<p>pumuckl schrieb:</p>
<blockquote>
<p>DStefan schrieb:</p>
<blockquote>
<p>Außer, der Code muss (auch) für so 'ne alte Karre wie VC6 funktionieren. Kommt leider noch immer vor.</p>
</blockquote>
<p>...Man mag sich jetzt streiten ab wann man einen Compiler als standardkonform bezeichnen darf (...100% wird wohl kaum einer schaffen),...</p>
</blockquote>
<p>100% schafft soviel ich weiß der Comeau (oder er ist zumindest sehr nah dran).</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1748846</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1748846</guid><dc:creator><![CDATA[asc]]></dc:creator><pubDate>Fri, 24 Jul 2009 12:02:24 GMT</pubDate></item><item><title><![CDATA[Reply to Verwendung von Namespaces in eigenen Projekten on Fri, 24 Jul 2009 14:08:17 GMT]]></title><description><![CDATA[<p>Artchi schrieb:</p>
<blockquote>
<p>Wer benutzt denn freiwillig VC6, außer er hat ein solch altes VC6-Projekt, das er aus irgendwelchen ominösen Gründen nicht auf einen aktuellen Standard portieren kann?</p>
</blockquote>
<p>Tja, ist vielleicht nicht so selten, wie man glaubt. Und die Gründe sind gar nicht so ominös: Ein größeres Projekt zu portieren kostet eine Menge Zeit und Geld. Da geht's dann einfach nach dem Motto &quot;Wieso? Es funktioniert doch!&quot;</p>
<p>Gerade diesen Monat habe ich mich bei einer (durchaus ernst zu nehmenden) Software-Firma beworben, die VC6 noch immer verwendet. Einfach weil sie Schnittstellen einer Fremdfirma verwenden müssen, die in VC6-C++ geschrieben sind.</p>
<blockquote>
<p>Das im Standard-C++-Forum überhaupt der VC6 erwähnung findet, grenzt schon an Blasphemie! Holt Eure Mistgabeln raus! <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/26a0.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--warning"
      title=":warning:"
      alt="⚠"
    /> <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /></p>
</blockquote>
<p>Ich entschuldige mich ausdrücklich für diesen Affront! Hoffentlich ist niemand beim Lesen ernsthaft krank geworden! <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /></p>
<p>Stefan.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1748933</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1748933</guid><dc:creator><![CDATA[DStefan]]></dc:creator><pubDate>Fri, 24 Jul 2009 14:08:17 GMT</pubDate></item></channel></rss>