<?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[Zeiger und Referenzen]]></title><description><![CDATA[<p>Hallo</p>
<p>Ich habe mir neulich das Buch &quot;C++ für Spieleprogrammierer&quot; von Heiko Kalista<br />
gekauft und komme nicht mehr weiter</p>
<p>Bei meinem Code wird folgende Fehlermeldung ausgegeben:</p>
<p>1&gt;l2.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol &quot;&quot;void __cdecl BerechnePunkte(int *,int)&quot; (?BerechnePunkte@@YAXPAHH@Z)&quot; in Funktion &quot;_main&quot;.<br />
1&gt;C:\Users\Josh\documents\visual studio 2010\Projects\Passwort\Debug\Passwort.exe : fatal error LNK1120: 1 nicht aufgelöste externe Verweise.</p>
<p>Hier mal mein Codesnippet</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;

using namespace std;

void ladeLevel(const int level);
void BerechnePunkte(int *pPunkte,const int Bonus);
void ZeigeDaten(int &amp;Punkte,int &amp;Energie,const int &amp;Team);

int main()
{
   const int level = 1;
   int Energie = 1000;
   int Punkte =0;
   const int Team = 1;
   const int Bonus = 550;

    ladeLevel(level);
    BerechnePunkte(&amp;Punkte, Bonus);
    ZeigeDaten(Punkte, Energie, Team);

   system(&quot;Pause&quot;);
   return 0;
}

void ladeLevel(const int level)
{
	cout &lt;&lt; &quot;Level &quot; &lt;&lt; level &lt;&lt; endl;
}

void BerechenPunkte(int *pPunkte,int Bonus)
{
	*pPunkte += Bonus;
}

void ZeigeDaten(int &amp;Punkte,int &amp;Energie,const int &amp;Team)
{
	cout &lt;&lt; &quot;Es gibt 550 Bonus Punkte\n&quot; &lt;&lt; endl;

	cout &lt;&lt; &quot;Daten des Spielers: &quot; &lt;&lt; endl;
	cout &lt;&lt; &quot;Energie: &quot; &lt;&lt; Energie &lt;&lt; endl;
	cout &lt;&lt; &quot;Punkte: &quot; &lt;&lt; Punkte &lt;&lt; endl;
	cout &lt;&lt; &quot;Team: &quot; &lt;&lt; Team &lt;&lt; endl;

}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/topic/288597/zeiger-und-referenzen</link><generator>RSS for Node</generator><lastBuildDate>Wed, 19 Aug 2026 22:00:17 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/288597.rss" rel="self" type="application/rss+xml"/><pubDate>Sun, 19 Jun 2011 19:09:36 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Zeiger und Referenzen on Sun, 19 Jun 2011 19:09:36 GMT]]></title><description><![CDATA[<p>Hallo</p>
<p>Ich habe mir neulich das Buch &quot;C++ für Spieleprogrammierer&quot; von Heiko Kalista<br />
gekauft und komme nicht mehr weiter</p>
<p>Bei meinem Code wird folgende Fehlermeldung ausgegeben:</p>
<p>1&gt;l2.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol &quot;&quot;void __cdecl BerechnePunkte(int *,int)&quot; (?BerechnePunkte@@YAXPAHH@Z)&quot; in Funktion &quot;_main&quot;.<br />
1&gt;C:\Users\Josh\documents\visual studio 2010\Projects\Passwort\Debug\Passwort.exe : fatal error LNK1120: 1 nicht aufgelöste externe Verweise.</p>
<p>Hier mal mein Codesnippet</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;

using namespace std;

void ladeLevel(const int level);
void BerechnePunkte(int *pPunkte,const int Bonus);
void ZeigeDaten(int &amp;Punkte,int &amp;Energie,const int &amp;Team);

int main()
{
   const int level = 1;
   int Energie = 1000;
   int Punkte =0;
   const int Team = 1;
   const int Bonus = 550;

    ladeLevel(level);
    BerechnePunkte(&amp;Punkte, Bonus);
    ZeigeDaten(Punkte, Energie, Team);

   system(&quot;Pause&quot;);
   return 0;
}

void ladeLevel(const int level)
{
	cout &lt;&lt; &quot;Level &quot; &lt;&lt; level &lt;&lt; endl;
}

void BerechenPunkte(int *pPunkte,int Bonus)
{
	*pPunkte += Bonus;
}

void ZeigeDaten(int &amp;Punkte,int &amp;Energie,const int &amp;Team)
{
	cout &lt;&lt; &quot;Es gibt 550 Bonus Punkte\n&quot; &lt;&lt; endl;

	cout &lt;&lt; &quot;Daten des Spielers: &quot; &lt;&lt; endl;
	cout &lt;&lt; &quot;Energie: &quot; &lt;&lt; Energie &lt;&lt; endl;
	cout &lt;&lt; &quot;Punkte: &quot; &lt;&lt; Punkte &lt;&lt; endl;
	cout &lt;&lt; &quot;Team: &quot; &lt;&lt; Team &lt;&lt; endl;

}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2080772</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2080772</guid><dc:creator><![CDATA[crashjosh]]></dc:creator><pubDate>Sun, 19 Jun 2011 19:09:36 GMT</pubDate></item><item><title><![CDATA[Reply to Zeiger und Referenzen on Sun, 19 Jun 2011 19:17:11 GMT]]></title><description><![CDATA[<p>Das ist vermutlich einer der Schreibfehler, die hier jedem schonmal passiert sind - vergleich mal die Deklaration ganz genau mit der Definition:</p>
<pre><code class="language-cpp">void BerechnePunkte(int *pPunkte,const int Bonus);
...
void BerechenPunkte(int *pPunkte,int Bonus)
{
    *pPunkte += Bonus;
}
</code></pre>
<p>PS: Aussagekräftige Thread-Titel könnten in Zukunft hilfreich sein <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/2080777</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2080777</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Sun, 19 Jun 2011 19:17:11 GMT</pubDate></item><item><title><![CDATA[Reply to Zeiger und Referenzen on Sun, 19 Jun 2011 19:17:55 GMT]]></title><description><![CDATA[<p>Du hast bei der Definition das const vergessen..<br />
Edit: zu langsam..</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2080778</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2080778</guid><dc:creator><![CDATA[314159265358979]]></dc:creator><pubDate>Sun, 19 Jun 2011 19:17:55 GMT</pubDate></item><item><title><![CDATA[Reply to Zeiger und Referenzen on Sun, 19 Jun 2011 19:19:26 GMT]]></title><description><![CDATA[<p>int und const int sind verschiedene Typen. Der Compiler sieht die Deklarationen in den Zeile 8 und 34 als unterschiedliche Überladungen einer Funktion BerechnePunkte. In der main() kennt er nur die erste und nimmt an, dass diese gemeint ist. Später findet der Linker aber dann nur die zweite, weil es keine Definition für die erste Funktion gibt.<br />
Lösung: Mach das const weg, es ist an der Stelle völlig sinnlos.</p>
<p>edit: Doppelt zu langsam.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2080780</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2080780</guid><dc:creator><![CDATA[SeppJ]]></dc:creator><pubDate>Sun, 19 Jun 2011 19:19:26 GMT</pubDate></item><item><title><![CDATA[Reply to Zeiger und Referenzen on Sun, 19 Jun 2011 19:22:06 GMT]]></title><description><![CDATA[<p>314159265358979 schrieb:</p>
<blockquote>
<p>Edit: zu langsam..</p>
</blockquote>
<p>Trotzdem auch hilfreich - die Stelle hatte ich auch noch übersehen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2080783</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2080783</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Sun, 19 Jun 2011 19:22:06 GMT</pubDate></item><item><title><![CDATA[Reply to Zeiger und Referenzen on Sun, 19 Jun 2011 19:29:18 GMT]]></title><description><![CDATA[<p>Ich habe so das gefühl,dass das immer noch falsch ist</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;

using namespace std;

void ladeLevel(int level);
void BerechnePunkte(int *pPunkte,int Bonus);
void ZeigeDaten(int &amp;Punkte,int &amp;Energie,int &amp;Team);

int main()
{
   int level = 1;
   int Energie = 1000;
   int Punkte =0;
   int Team = 1;
   int Bonus = 550;

    ladeLevel(level);
    BerechnePunkte(&amp;Punkte, Bonus);
    ZeigeDaten(Punkte, Energie, Team);

   system(&quot;Pause&quot;);
   return 0;
}

void ladeLevel(int level)
{
	cout &lt;&lt; &quot;Level &quot; &lt;&lt; level &lt;&lt; endl;
}

void BerechenPunkte(int *pPunkte,int Bonus)
{
	*pPunkte += Bonus;
}

void ZeigeDaten(int &amp;Punkte,int &amp;Energie,int &amp;Team)
{
	cout &lt;&lt; &quot;Es gibt 550 Bonus Punkte\n&quot; &lt;&lt; endl;

	cout &lt;&lt; &quot;Daten des Spielers: &quot; &lt;&lt; endl;
	cout &lt;&lt; &quot;Energie: &quot; &lt;&lt; Energie &lt;&lt; endl;
	cout &lt;&lt; &quot;Punkte: &quot; &lt;&lt; Punkte &lt;&lt; endl;
	cout &lt;&lt; &quot;Team: &quot; &lt;&lt; Team &lt;&lt; endl;

}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2080791</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2080791</guid><dc:creator><![CDATA[crashjosh]]></dc:creator><pubDate>Sun, 19 Jun 2011 19:29:18 GMT</pubDate></item><item><title><![CDATA[Reply to Zeiger und Referenzen on Sun, 19 Jun 2011 19:31:20 GMT]]></title><description><![CDATA[<p>Da hilft wirklich nur noch <strong>sehr</strong> genau hinsehen - du hast im Funktionsnamen einen Buchstabendreher eingebaut und &quot;BerechenPunkte&quot; ist nunmal etwas anderes als &quot;BerechnePunkte&quot;.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2080793</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2080793</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Sun, 19 Jun 2011 19:31:20 GMT</pubDate></item><item><title><![CDATA[Reply to Zeiger und Referenzen on Sun, 19 Jun 2011 19:33:41 GMT]]></title><description><![CDATA[<p>Genau das wars ^^ danke @ CStoll und alle anderen<br />
-.- Anfängerfehler</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2080797</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2080797</guid><dc:creator><![CDATA[crashjosh]]></dc:creator><pubDate>Sun, 19 Jun 2011 19:33:41 GMT</pubDate></item><item><title><![CDATA[Reply to Zeiger und Referenzen on Sun, 19 Jun 2011 20:17:08 GMT]]></title><description><![CDATA[<p>SeppJ schrieb:</p>
<blockquote>
<p>int und const int sind verschiedene Typen. Der Compiler sieht die Deklarationen in den Zeile 8 und 34 als unterschiedliche Überladungen einer Funktion BerechnePunkte.</p>
</blockquote>
<p>Nein, Top-Level-CV-Qualifizierer sind im Hinblick auf die Funktionssignatur irrelevant. Ohne Vertipper wäre das ein und dieselbe Funktion.</p>
<p>Wie sollte auch eine Überladung von <code>int</code> und <code>const int</code> aufgelöst werden?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2080817</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2080817</guid><dc:creator><![CDATA[Nexus]]></dc:creator><pubDate>Sun, 19 Jun 2011 20:17:08 GMT</pubDate></item><item><title><![CDATA[Reply to Zeiger und Referenzen on Sun, 19 Jun 2011 20:20:16 GMT]]></title><description><![CDATA[<p>Nexus schrieb:</p>
<blockquote>
<p>SeppJ schrieb:</p>
<blockquote>
<p>int und const int sind verschiedene Typen. Der Compiler sieht die Deklarationen in den Zeile 8 und 34 als unterschiedliche Überladungen einer Funktion BerechnePunkte.</p>
</blockquote>
<p>Nein, Top-Level-CV-Qualifizierer sind im Hinblick auf die Funktionssignatur irrelevant. Ohne Vertipper wäre das ein und dieselbe Funktion.</p>
<p>Wie sollte auch eine Überladung von <code>int</code> und <code>const int</code> aufgelöst werden?</p>
</blockquote>
<p>Stimmt. War etwas zu eilig geantwortet, weil's so offensichtlich aussah.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2080822</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2080822</guid><dc:creator><![CDATA[SeppJ]]></dc:creator><pubDate>Sun, 19 Jun 2011 20:20:16 GMT</pubDate></item></channel></rss>