<?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[3 kurze anfängerfragen]]></title><description><![CDATA[<p>hi,</p>
<p>ich lerne gerade c++ und habe jetzt 3 fragen zu operatoren, zeigern und templates:</p>
<p>1. ich weiß was operatoren sind und weclche es gibt, aber ich seh öfters funktionen oder klassen mit operatoren, also ungefähr so:</p>
<pre><code>MeineKlasse MeineKlasse::operator+ (....) usw.
</code></pre>
<p>Das Problem ist, dass ich den Syntaxaufbau nicht ganz verstehe, vielleicht könnt ihr mir ja helfen <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 />
2. wie lange hat es bei euch gedauert, bis ihr zeiger verstanden habt und mit was (also tutorial, oder irgendwas anderes) habt ihr diese verstanden?<br />
3. für was werden templates benötigt?</p>
<p>vielen dank schonmal <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f44d.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--thumbs_up"
      title=":+1:"
      alt="👍"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/topic/247489/3-kurze-anfängerfragen</link><generator>RSS for Node</generator><lastBuildDate>Thu, 17 Sep 2026 13:13:36 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/247489.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 11 Aug 2009 17:55:29 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to 3 kurze anfängerfragen on Tue, 11 Aug 2009 17:55:29 GMT]]></title><description><![CDATA[<p>hi,</p>
<p>ich lerne gerade c++ und habe jetzt 3 fragen zu operatoren, zeigern und templates:</p>
<p>1. ich weiß was operatoren sind und weclche es gibt, aber ich seh öfters funktionen oder klassen mit operatoren, also ungefähr so:</p>
<pre><code>MeineKlasse MeineKlasse::operator+ (....) usw.
</code></pre>
<p>Das Problem ist, dass ich den Syntaxaufbau nicht ganz verstehe, vielleicht könnt ihr mir ja helfen <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 />
2. wie lange hat es bei euch gedauert, bis ihr zeiger verstanden habt und mit was (also tutorial, oder irgendwas anderes) habt ihr diese verstanden?<br />
3. für was werden templates benötigt?</p>
<p>vielen dank schonmal <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f44d.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--thumbs_up"
      title=":+1:"
      alt="👍"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1759025</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1759025</guid><dc:creator><![CDATA[k11]]></dc:creator><pubDate>Tue, 11 Aug 2009 17:55:29 GMT</pubDate></item><item><title><![CDATA[Reply to 3 kurze anfängerfragen on Tue, 11 Aug 2009 18:06:12 GMT]]></title><description><![CDATA[<ol>
<li></li>
</ol>
<pre><code class="language-cpp">MeineKlasse MeineKlasse::operator+ (....)
</code></pre>
<p>Ist eigentlich genau gleich, wie bei normalen Funktionen:<br />
Zuerst kommt der Rückgabetyp, dann gefolgt von Namen. (hier halt <code>operator +</code> ). Und <code>MeineKlasse::</code> ist ja dazu da, um dem Compiler mitzuteilen, dass es keine freie Funktion ist, sondern eine Member von <code>MeineKlasse</code> .<br />
Weiteres, und die man gewisse Operatoren implementiert siehe hier:<br />
<a href="http://www.c-plusplus.net/forum/viewtopic-var-t-is-232010.html" rel="nofollow">http://www.c-plusplus.net/forum/viewtopic-var-t-is-232010.html</a></p>
<ol start="2">
<li></li>
</ol>
<p>Phu. Ich fand Zeiger von Anfangan recht logisch und ich denke, dass ich es recht schnell kapiert habe. (Ich habe damals mit dem Buch C++ für Spieleprogrammierer angefangen). Mach am besten einfach ein paar Übungen und z.B Stringmanipulationen auf Basis von Zeiger, dann wirst du Zeiger, Arrays und ihr zusammenspiel recht schnell begreifen.</p>
<ol start="3">
<li></li>
</ol>
<p>Templates sind schablonen (ohh, wär hätte das gedacht. :)), die dazu gedacht sind ganze Familien von Funktionen oder Klassen zu erzeugen, abhängig von einem, oder mehreren Typen. Am besten konsultierst du hier auch ein gutes Anfängerbuch, denn templates sind grundsätzlich auch nicht schwer zu verstehen. Man kann sehr viel damit machen und es kann sehr kompliziert werden, aber templates, wie sie am Anfang ihrer Entwicklung gedacht waren sind etwas sehr simples.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1759032</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1759032</guid><dc:creator><![CDATA[drakon]]></dc:creator><pubDate>Tue, 11 Aug 2009 18:06:12 GMT</pubDate></item><item><title><![CDATA[Reply to 3 kurze anfängerfragen on Tue, 11 Aug 2009 18:18:53 GMT]]></title><description><![CDATA[<p>1. In C++ kann man eigene Operatoren definieren. Es gibt hier auf der Seite einen sehr guten Artikel dazu. Die Syntax ist die gleiche wie bei anderen Funktionen auch:</p>
<pre><code>MeineKlasse MeineKlasse::operator+ (....)
</code></pre>
<p>Das erste ist der Rückgabewert. Es wird ein Objekt vom Typ MeineKlasse zurückgegeben.<br />
Das MeineKlasse::operator+ ist der Name der Funktion. Man wird diesen natürlich nur selten so benutzen, da dann der ganze Witz von Operatoren verloren geht. Stattdessen schreibt man dann später um die Funktion zu benutzen:</p>
<pre><code>objekt_vom_typ_MeineKlasse + irgendwas;
</code></pre>
<p>Das in den Klammern sind dann die Argumente. Der Plusoperator hat zwei Argumente, das was links vom + steht und das was rechts vom + steht. Die beiden müssen aber nicht unbedingt vom selben Typ sein.<br />
Hier der Artikel dazu:<br />
<a href="http://www.c-plusplus.net/forum/viewtopic-var-t-is-232010.html" rel="nofollow">http://www.c-plusplus.net/forum/viewtopic-var-t-is-232010.html</a></p>
<p>2. Pointer habe ich innerhalb weniger Minuten verstanden, im Infomatikunterricht mit TurboPascal. Unser Lehrer hat das anscheinend sehr gut erklärt, hatte nie wirklich Schwierigkeiten außer mit der Syntax.</p>
<p>3. Templates sind dafür gedacht, dass man typenunabhängigen Code schreibt. So muss man einen Algorithmus nur einmal schreiben und kann ihn für alle möglichen Datentypen verwenden. Ein gutes Beispiel sind die Container aus der STL: Es ist keine große Sache sich mit Pointern ein dynamisches Konstrukt zum Speichern von Integers zu schreiben, nennen wir es mal mein_dynamisches_array_fuer_ints. Wenn man solch ein Konstrukt erstmal hat und es für was anderes als int verwenden will, sagen wir char, dann kann man die gleichen Algorithmen verwenden, aber man muss überall int gegen char tauschen und bekommt dann mein_dynamisches_array_fuer_chars.<br />
Dies für jeden Typ den man irgendwann einmal verwenden will zu machen ist viel unnötige Arbeit und man hat quasi den gleichen Code zigmal da stehen. Und da setzen Templates an: Man schreibt das ganze allgemein als Template und der Programmierer gibt dann an, welcher Typ verwendet werden soll. So kann man dann auch mein_dynamisches_array_fuer&lt;MeineKlasse&gt; verwenden, obwohl derjenige, der das dynamische Array geschrieben hat, vielleicht noch gar nichts von MeineKlasse gewusst hat.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1759037</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1759037</guid><dc:creator><![CDATA[SeppJ]]></dc:creator><pubDate>Tue, 11 Aug 2009 18:18:53 GMT</pubDate></item><item><title><![CDATA[Reply to 3 kurze anfängerfragen on Wed, 12 Aug 2009 11:07:29 GMT]]></title><description><![CDATA[<p>2. Ich hatte nen guten Lehrer, der das mal mit einem Schubladenregal erklärt hat, das ging ungefähr so:</p>
<p>Jede Variable ist eine Schublade, in der ein Zettel mit dem Wert der Variablen draufsteht. Die Schubladen sind außerdem nummeriert (=Speicheradresse) und können Namen haben (=Variablenname).</p>
<p>Ein Zeiger ist eine Schublade, in der ein Zettel liegt, auf dem die Nummer einer anderen Schublade steht.<br />
Dann muss man eigentlich nur noch wissen, was die Operatoren tun.</p>
<p>Referenzieren:</p>
<pre><code>int a = 5;
int *b = &amp;a;
</code></pre>
<p>Man schreibt auf, welche Nummer (=Speicheradresse) die Schublade a hat und tut den Zettel in Schublade b.</p>
<p>Dereferenzieren:</p>
<pre><code>*b
</code></pre>
<p>Man nimmt den Zettel aus Schublade b, da steht die Nummer von Schublade a drauf und da holt man den Wert raus.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1759375</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1759375</guid><dc:creator><![CDATA[empgodot]]></dc:creator><pubDate>Wed, 12 Aug 2009 11:07:29 GMT</pubDate></item><item><title><![CDATA[Reply to 3 kurze anfängerfragen on Wed, 12 Aug 2009 11:19:51 GMT]]></title><description><![CDATA[<p>Immer dieses Schubladendenken. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f621.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--pouting_face"
      title=":rage:"
      alt="😡"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1759389</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1759389</guid><dc:creator><![CDATA[punk]]></dc:creator><pubDate>Wed, 12 Aug 2009 11:19:51 GMT</pubDate></item><item><title><![CDATA[Reply to 3 kurze anfängerfragen on Wed, 12 Aug 2009 11:26:58 GMT]]></title><description><![CDATA[<p>punk schrieb:</p>
<blockquote>
<p>Immer dieses Schubladendenken. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f621.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--pouting_face"
      title=":rage:"
      alt="😡"
    /></p>
</blockquote>
<p><img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f44d.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--thumbs_up"
      title=":+1:"
      alt="👍"
    /><br />
Mir ist derselbe Spruch durch den Kopf. <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>
]]></description><link>https://www.c-plusplus.net/forum/post/1759400</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1759400</guid><dc:creator><![CDATA[drakon]]></dc:creator><pubDate>Wed, 12 Aug 2009 11:26:58 GMT</pubDate></item><item><title><![CDATA[Reply to 3 kurze anfängerfragen on Wed, 12 Aug 2009 14:17:26 GMT]]></title><description><![CDATA[<p>immer wenn ein Lehrer &quot;Schublade&quot; sagt würde ich ihm jenige gern gegen den kopf schmeißen <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>EDIT: Mag ja gut zum erklären sein aber langsam nervts mich wenn das irgwer sagt. ^^</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1759530</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1759530</guid><dc:creator><![CDATA[5cript]]></dc:creator><pubDate>Wed, 12 Aug 2009 14:17:26 GMT</pubDate></item><item><title><![CDATA[Reply to 3 kurze anfängerfragen on Wed, 12 Aug 2009 16:56:08 GMT]]></title><description><![CDATA[<p>punk schrieb:</p>
<blockquote>
<p>Immer dieses Schubladendenken. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f621.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--pouting_face"
      title=":rage:"
      alt="😡"
    /></p>
</blockquote>
<p>Hehe <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>Schubladen sind mir in C++ eigentlich eher als Metapher für Namensräume bekannt, wurde hier im Forum zumindest auch schon benutzt. Unter anderem, weil man sie mit <code>using namespace</code> so schön über den gesamten Zimmerboden (der meist sonst schon grausam überfüllt ist) ausleeren kann. <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>
]]></description><link>https://www.c-plusplus.net/forum/post/1759656</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1759656</guid><dc:creator><![CDATA[Nexus]]></dc:creator><pubDate>Wed, 12 Aug 2009 16:56:08 GMT</pubDate></item></channel></rss>