<?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[Bedutung von using namespace]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich versuche mir selbst programmieren beizubringen und habe ein Programm entdeckt welches die Benutzung von new und delete demonstriert.</p>
<pre><code>#include &lt;list&gt; 
#include &lt;iostream&gt; 
using namespace std; 

class Kugel {

   private:															
   int id;																
   static int gid;													

public: 
	Kugel():id(++gid){}												
   ~Kugel() { cout &lt;&lt; &quot;Kugel &quot; &lt;&lt; id &lt;&lt; &quot; wird geloescht&quot; &lt;&lt; endl; }
   int getID() { return id; }										

   }; 

int Kugel::gid = 0;														

int main() { 
							// 4 Kugeln auf dem Heap anlegen 
   Kugel* k = new Kugel; 
   Kugel* k2 = new Kugel; 
   Kugel* k3 = new Kugel; 
   Kugel* k4 = new Kugel; 
   std::list&lt;Kugel*&gt; l; 
   l.push_back(k);			// Jetzt speichern wir Zeiger in der List 
   l.push_back(k2);			// d.h, es wird der Zeiger 
                                //kopiert und NICHT das ganze 
   l.push_back(k3);			// Objekt 

   for(std::list&lt;Kugel*&gt;::iterator it = l.begin();  it!=l.end(); ++it) 
      cout &lt;&lt; &quot;Kugel &quot; &lt;&lt; (*it)-&gt;getID() &lt;&lt; endl; 

   it = l.begin(); 
   ++it; 
   delete *it;   // Kugel 2 vom Heap löschen 
   l.erase(it);  // Zeiger auf den nicht mehr gültigen Block entfernen 

   for(it = l.begin();  it!=l.end(); ++it) 
      cout &lt;&lt; &quot;Kugel &quot; &lt;&lt; (*it)-&gt;getID() &lt;&lt; endl; 

   // Kugel 4 löschen weil ich Bock drauf hab: 
   delete k4;  // Hier wird auch der Dtor aufgerufen 

   cin.get(); 
   return 0; 
}
</code></pre>
<p>Ich habe das so verstanden:<br />
Jemand hat eine Klsasse List geschrieben, die mit Tempates arbeitet.<br />
Nun möchte ich die Klasse benutzen und füge sie mit &quot;#include &lt;list&gt;&quot; ein.</p>
<p>Wozu ist aber dieses &quot;using namespace std;&quot; gut?<br />
Warum muss ich vor dem gebrach der klasse auch dieses std schreiben &quot;std::list&lt;Kugel*&gt; l;&quot;<br />
Und woran erkenne ich, dass und wann ich dieses &quot;using namespace&quot; anwenden muss.</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/120022/bedutung-von-using-namespace</link><generator>RSS for Node</generator><lastBuildDate>Sat, 22 Aug 2026 05:34:20 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/120022.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 08 Sep 2005 08:02:02 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Bedutung von using namespace on Thu, 08 Sep 2005 08:02:02 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich versuche mir selbst programmieren beizubringen und habe ein Programm entdeckt welches die Benutzung von new und delete demonstriert.</p>
<pre><code>#include &lt;list&gt; 
#include &lt;iostream&gt; 
using namespace std; 

class Kugel {

   private:															
   int id;																
   static int gid;													

public: 
	Kugel():id(++gid){}												
   ~Kugel() { cout &lt;&lt; &quot;Kugel &quot; &lt;&lt; id &lt;&lt; &quot; wird geloescht&quot; &lt;&lt; endl; }
   int getID() { return id; }										

   }; 

int Kugel::gid = 0;														

int main() { 
							// 4 Kugeln auf dem Heap anlegen 
   Kugel* k = new Kugel; 
   Kugel* k2 = new Kugel; 
   Kugel* k3 = new Kugel; 
   Kugel* k4 = new Kugel; 
   std::list&lt;Kugel*&gt; l; 
   l.push_back(k);			// Jetzt speichern wir Zeiger in der List 
   l.push_back(k2);			// d.h, es wird der Zeiger 
                                //kopiert und NICHT das ganze 
   l.push_back(k3);			// Objekt 

   for(std::list&lt;Kugel*&gt;::iterator it = l.begin();  it!=l.end(); ++it) 
      cout &lt;&lt; &quot;Kugel &quot; &lt;&lt; (*it)-&gt;getID() &lt;&lt; endl; 

   it = l.begin(); 
   ++it; 
   delete *it;   // Kugel 2 vom Heap löschen 
   l.erase(it);  // Zeiger auf den nicht mehr gültigen Block entfernen 

   for(it = l.begin();  it!=l.end(); ++it) 
      cout &lt;&lt; &quot;Kugel &quot; &lt;&lt; (*it)-&gt;getID() &lt;&lt; endl; 

   // Kugel 4 löschen weil ich Bock drauf hab: 
   delete k4;  // Hier wird auch der Dtor aufgerufen 

   cin.get(); 
   return 0; 
}
</code></pre>
<p>Ich habe das so verstanden:<br />
Jemand hat eine Klsasse List geschrieben, die mit Tempates arbeitet.<br />
Nun möchte ich die Klasse benutzen und füge sie mit &quot;#include &lt;list&gt;&quot; ein.</p>
<p>Wozu ist aber dieses &quot;using namespace std;&quot; gut?<br />
Warum muss ich vor dem gebrach der klasse auch dieses std schreiben &quot;std::list&lt;Kugel*&gt; l;&quot;<br />
Und woran erkenne ich, dass und wann ich dieses &quot;using namespace&quot; anwenden muss.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/867541</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/867541</guid><dc:creator><![CDATA[MisterX]]></dc:creator><pubDate>Thu, 08 Sep 2005 08:02:02 GMT</pubDate></item><item><title><![CDATA[Reply to Bedutung von using namespace on Thu, 08 Sep 2005 08:04:59 GMT]]></title><description><![CDATA[<p>Hallo</p>
<p><a href="http://tutorial.schornboeck.net/namespace.htm" rel="nofollow">http://tutorial.schornboeck.net/namespace.htm</a></p>
<p>bis bald<br />
akari</p>
]]></description><link>https://www.c-plusplus.net/forum/post/867542</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/867542</guid><dc:creator><![CDATA[akari]]></dc:creator><pubDate>Thu, 08 Sep 2005 08:04:59 GMT</pubDate></item></channel></rss>