<?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[nicht aufgelöstes externes Symbol]]></title><description><![CDATA[<p>Hallo!</p>
<p>Ich bekomme beim Kompilieren folgende Fehler:</p>
<blockquote>
<p>1&gt;------ Erstellen gestartet: Projekt: GSE1, Konfiguration: Debug Win32 ------<br />
1&gt;Kompilieren...<br />
1&gt;cl : Befehlszeile warning D9035 : Die Option &quot;Wp64&quot; ist veraltet und wird in einer der nächsten Versionen entfernt.<br />
1&gt;test.cpp<br />
1&gt;Verknüpfen...<br />
1&gt;test.obj : error LNK2001: Nicht aufgelöstes externes Symbol &quot;&quot;public: virtual bool __thiscall CGiro::copy(class CGiro)&quot; (?copy@CGiro@@UAE_NV1@@Z)&quot;.<br />
1&gt;test.obj : error LNK2001: Nicht aufgelöstes externes Symbol &quot;&quot;public: virtual bool __thiscall CGiro::equalValue(class CGiro)&quot; (?equalValue@CGiro@@UAE_NV1@@Z)&quot;.<br />
&gt; ... noch 9 davon...<br />
1&gt;C:\Dokumente und Einstellungen\root\workspace\GSE1\Debug\GSE1.exe : fatal error LNK1120: 10 nicht aufgelöste externe Verweise.<br />
1&gt;Das Buildprotokoll wurde unter &quot;file://c:\Dokumente und Einstellungen\root\workspace\GSE1\Debug\BuildLog.htm&quot; gespeichert.<br />
1&gt;GSE1 - 11 Fehler, 1 Warnung(en)<br />
========== Erstellen: 0 erfolgreich, Fehler bei 1, 0 aktuell, 0 übersprungen ==========</p>
</blockquote>
<p>Das ist meine main-Funktion in meiner test.cpp:</p>
<pre><code>#include &lt;string&gt;
#include &lt;iostream&gt;
#include &quot;CDate.h&quot;
#include &quot;CGiro.h&quot;
using namespace std;

int main() {
    CDate date(10,02,3005);
    CGiro *g = new CGiro(1, date, &quot;Kira&quot;, 0.01, date, 1000.00);

    g-&gt;show();

    system(&quot;pause&quot;); 
    return 0;
}
</code></pre>
<p>Die Klassen sind etwas umfangreicher.<br />
CDate ist einfach eine Klasse, die 3 Zahlen hält.<br />
CGiro ist von der abstrakten Klasse CAccount abgeleitet.</p>
<p>In CGiro.h habe ich include &quot;CAccount.h&quot; drin.</p>
<p>Nun bin ich recht neu in C++ und habe nicht so viel Ahnung - trotzt Hilfe - was mir dieser Fehler sagen soll und was ich ändern muss, damit er weg geht.</p>
<p>Hilfe! *liebguck*</p>
<p>Grüße, pktm</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/209788/nicht-aufgelöstes-externes-symbol</link><generator>RSS for Node</generator><lastBuildDate>Tue, 13 Oct 2026 01:29:09 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/209788.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 03 Apr 2008 12:23:08 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to nicht aufgelöstes externes Symbol on Thu, 03 Apr 2008 12:23:08 GMT]]></title><description><![CDATA[<p>Hallo!</p>
<p>Ich bekomme beim Kompilieren folgende Fehler:</p>
<blockquote>
<p>1&gt;------ Erstellen gestartet: Projekt: GSE1, Konfiguration: Debug Win32 ------<br />
1&gt;Kompilieren...<br />
1&gt;cl : Befehlszeile warning D9035 : Die Option &quot;Wp64&quot; ist veraltet und wird in einer der nächsten Versionen entfernt.<br />
1&gt;test.cpp<br />
1&gt;Verknüpfen...<br />
1&gt;test.obj : error LNK2001: Nicht aufgelöstes externes Symbol &quot;&quot;public: virtual bool __thiscall CGiro::copy(class CGiro)&quot; (?copy@CGiro@@UAE_NV1@@Z)&quot;.<br />
1&gt;test.obj : error LNK2001: Nicht aufgelöstes externes Symbol &quot;&quot;public: virtual bool __thiscall CGiro::equalValue(class CGiro)&quot; (?equalValue@CGiro@@UAE_NV1@@Z)&quot;.<br />
&gt; ... noch 9 davon...<br />
1&gt;C:\Dokumente und Einstellungen\root\workspace\GSE1\Debug\GSE1.exe : fatal error LNK1120: 10 nicht aufgelöste externe Verweise.<br />
1&gt;Das Buildprotokoll wurde unter &quot;file://c:\Dokumente und Einstellungen\root\workspace\GSE1\Debug\BuildLog.htm&quot; gespeichert.<br />
1&gt;GSE1 - 11 Fehler, 1 Warnung(en)<br />
========== Erstellen: 0 erfolgreich, Fehler bei 1, 0 aktuell, 0 übersprungen ==========</p>
</blockquote>
<p>Das ist meine main-Funktion in meiner test.cpp:</p>
<pre><code>#include &lt;string&gt;
#include &lt;iostream&gt;
#include &quot;CDate.h&quot;
#include &quot;CGiro.h&quot;
using namespace std;

int main() {
    CDate date(10,02,3005);
    CGiro *g = new CGiro(1, date, &quot;Kira&quot;, 0.01, date, 1000.00);

    g-&gt;show();

    system(&quot;pause&quot;); 
    return 0;
}
</code></pre>
<p>Die Klassen sind etwas umfangreicher.<br />
CDate ist einfach eine Klasse, die 3 Zahlen hält.<br />
CGiro ist von der abstrakten Klasse CAccount abgeleitet.</p>
<p>In CGiro.h habe ich include &quot;CAccount.h&quot; drin.</p>
<p>Nun bin ich recht neu in C++ und habe nicht so viel Ahnung - trotzt Hilfe - was mir dieser Fehler sagen soll und was ich ändern muss, damit er weg geht.</p>
<p>Hilfe! *liebguck*</p>
<p>Grüße, pktm</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1485787</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1485787</guid><dc:creator><![CDATA[pktm]]></dc:creator><pubDate>Thu, 03 Apr 2008 12:23:08 GMT</pubDate></item><item><title><![CDATA[Reply to nicht aufgelöstes externes Symbol on Thu, 03 Apr 2008 12:53:03 GMT]]></title><description><![CDATA[<p>pktm schrieb:</p>
<blockquote>
<p>Mit dem Code alleine kann ich nur raten[</p>
</blockquote>
<blockquote>
<p>1&gt;test.obj : error LNK2001: Nicht aufgelöstes externes Symbol &quot;&quot;public: virtual bool __thiscall CGiro::copy(class CGiro)&quot; (?copy@CGiro@@UAE_NV1@@Z)&quot;.<br />
1&gt;test.obj : error LNK2001: Nicht aufgelöstes externes Symbol &quot;&quot;public: virtual bool __thiscall CGiro::equalValue(class CGiro)&quot;</p>
</blockquote>
<p>Der Compiler findet nicht die entsprechende Implementierung der Methode...</p>
<p>Ein paar Möglichkeiten:<br />
a) Du hast in den Cpp-Dateien statt ...bool CGiro::copy(... ein ...bool copy(... stehen (Bei Membervariablen ist die Klasse mit anzugeben).<br />
b) Du hast die virtuellen Methoden nicht implementiert<br />
c) Die Cpp-Dateien wurden nicht deinem Projekt hinzugefügt<br />
...</p>
<p>Zudem noch 2 weitere Anmerkungen:</p>
<p>pktm schrieb:</p>
<blockquote>
<pre><code class="language-cpp">int main() {
    CDate date(10,02,3005);
    CGiro *g = new CGiro(1, date, &quot;Kira&quot;, 0.01, date, 1000.00);

    g-&gt;show();

    system(&quot;pause&quot;); // &lt;-- Unschön und Plattformabhängig [1]
    return 0;        // &lt;-- Hiervor fehlt noch ein delete g; [2]
}
</code></pre>
</blockquote>
<p>1. Siehe Konsolen-FAQ (Automatisches Schließen verhindern oder so ähnlich)<br />
2. Was du mit new anlegst hast du auch mit delete aufzuräumen, an dieser Stelle verstehe ich eh nicht, warum du mit new Arbeitest...</p>
<p>In aller Kürze:</p>
<pre><code class="language-cpp">int main() {
    CDate date(10,02,3005);
    CGiro g(1, date, &quot;Kira&quot;, 0.01, date, 1000.00);
    g.show();

    wait(); // Siehe Konsolen-FAQ
}
</code></pre>
<p>cu André</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1485806</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1485806</guid><dc:creator><![CDATA[asc]]></dc:creator><pubDate>Thu, 03 Apr 2008 12:53:03 GMT</pubDate></item><item><title><![CDATA[Reply to nicht aufgelöstes externes Symbol on Thu, 03 Apr 2008 14:03:48 GMT]]></title><description><![CDATA[<p>Hallo!</p>
<p>Also, mit new() arbeite ich mehr so aus gewohnheit, ich habe keine Ahnung, wann man new() nehmen sollte oder wann man statisch initialisieren sollte.</p>
<p>Es trifft den 3. Punkt, ich habe die cpp-Dateien nicht zum Projekt hinzugefügt.<br />
Brauche ich die? Ich habe bislang einfach eine .h-Datei geschrieben wo meine Funktionen drin waren und die mit #include &quot;datei.h&quot; verwendet.<br />
Allerdings hatte ich da auch noch keine IDE, und daher habe ich gar nicht verstanden, warum da auf einmal cpp-Dateien für meine .h-Dateien angelegt wurden.<br />
Was kommt denn in die .h und was kommt in die .cpp?</p>
<p>Danke &amp; Grüße, Alex</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1485843</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1485843</guid><dc:creator><![CDATA[pktm]]></dc:creator><pubDate>Thu, 03 Apr 2008 14:03:48 GMT</pubDate></item><item><title><![CDATA[Reply to nicht aufgelöstes externes Symbol on Thu, 03 Apr 2008 14:54:08 GMT]]></title><description><![CDATA[<p>Grundsätzlich gehört in den Header die Deklaration und in die .cpp die Definition.</p>
<p>Sprich:<br />
xxx.h</p>
<pre><code class="language-cpp">class foo
{
    public:
    void bar ();
};
</code></pre>
<p>xxx.cpp</p>
<pre><code class="language-cpp">void foo::bar () 
{...}
</code></pre>
<p>Die Deklarationen sind wichtig für die anderen Einheiten, damit die wissen, was das für ne Klasse ist und was die für Funktionen hat. Darum musst du das per #include inkludieren und die Source wird normalerweise von der IDE mitgelinkt.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1485891</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1485891</guid><dc:creator><![CDATA[drakon]]></dc:creator><pubDate>Thu, 03 Apr 2008 14:54:08 GMT</pubDate></item></channel></rss>