<?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[C++ Problem beim Linken]]></title><description><![CDATA[<p>Hallo, ich bin neu hier und habe ein problem, dass ich schon seit Tagen nicht lösen kann.</p>
<p>Es handelt sich um ein einfaches Programm, welches einfach nur einen Text ausgibt.<br />
Dabei verwende ich 3 Dateien nämlich &quot;Main&quot; &quot;Class&quot; und &quot;Implementation&quot;. Ich weiß natülich, dass ich den Code direkt über Main ausgeben könnte, aber ich möchte ein bisschen herumprobieren mit Klassen und Objekten und bekomme aber immer den Fehler &quot;undefined reference to&quot;. Komischerweise funktioniert es aber, wenn ich die Implementationsdatei weglasse und die Methoden direkt in der Klasse definiere<br />
...hat jemand eine Idee wie ich das lösen kann? <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--disappointed_face"
      title=":("
      alt="😞"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/topic/334136/c-problem-beim-linken</link><generator>RSS for Node</generator><lastBuildDate>Sun, 26 Apr 2026 00:57:13 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/334136.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 24 Aug 2015 11:35:16 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to C++ Problem beim Linken on Mon, 24 Aug 2015 11:35:16 GMT]]></title><description><![CDATA[<p>Hallo, ich bin neu hier und habe ein problem, dass ich schon seit Tagen nicht lösen kann.</p>
<p>Es handelt sich um ein einfaches Programm, welches einfach nur einen Text ausgibt.<br />
Dabei verwende ich 3 Dateien nämlich &quot;Main&quot; &quot;Class&quot; und &quot;Implementation&quot;. Ich weiß natülich, dass ich den Code direkt über Main ausgeben könnte, aber ich möchte ein bisschen herumprobieren mit Klassen und Objekten und bekomme aber immer den Fehler &quot;undefined reference to&quot;. Komischerweise funktioniert es aber, wenn ich die Implementationsdatei weglasse und die Methoden direkt in der Klasse definiere<br />
...hat jemand eine Idee wie ich das lösen kann? <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--disappointed_face"
      title=":("
      alt="😞"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2465334</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2465334</guid><dc:creator><![CDATA[maxkla]]></dc:creator><pubDate>Mon, 24 Aug 2015 11:35:16 GMT</pubDate></item><item><title><![CDATA[Reply to C++ Problem beim Linken on Mon, 24 Aug 2015 11:49:52 GMT]]></title><description><![CDATA[<p>Wie Compilierst/Linkst du denn?</p>
<p>PS: Falsches Forum, zu Compiler-Problemen gibt es jeweils extra Foren.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2465336</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2465336</guid><dc:creator><![CDATA[tkausl]]></dc:creator><pubDate>Mon, 24 Aug 2015 11:49:52 GMT</pubDate></item><item><title><![CDATA[Reply to C++ Problem beim Linken on Mon, 24 Aug 2015 11:50:07 GMT]]></title><description><![CDATA[<p>Ja.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2465337</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2465337</guid><dc:creator><![CDATA[DocShoe]]></dc:creator><pubDate>Mon, 24 Aug 2015 11:50:07 GMT</pubDate></item><item><title><![CDATA[Reply to C++ Problem beim Linken on Mon, 24 Aug 2015 12:03:33 GMT]]></title><description><![CDATA[<p>maxkla schrieb:</p>
<blockquote>
<p>Hallo, ich bin neu hier und habe ein problem, dass ich schon seit Tagen nicht lösen kann.</p>
<p>Es handelt sich um ein einfaches Programm, welches einfach nur einen Text ausgibt.<br />
Dabei verwende ich 3 Dateien nämlich &quot;Main&quot; &quot;Class&quot; und &quot;Implementation&quot;. Ich weiß natülich, dass ich den Code direkt über Main ausgeben könnte, aber ich möchte ein bisschen herumprobieren mit Klassen und Objekten und bekomme aber immer den Fehler &quot;undefined reference to&quot;. Komischerweise funktioniert es aber, wenn ich die Implementationsdatei weglasse und die Methoden direkt in der Klasse definiere<br />
...hat jemand eine Idee wie ich das lösen kann? <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--disappointed_face"
      title=":("
      alt="😞"
    /></p>
</blockquote>
<p>schwierig so zu sagen klingt aber so als wenn du nicht richtig linkst...</p>
<p>welche ide benutzt du ?<br />
wie compilierst du ?<br />
hast richtig gelinkt? ( siehe Option &quot;-l&quot; beim compilieren... )</p>
<p>schau mal hier ein ähnliches problem aus dem forum: (nur hier opencv)<br />
<a href="https://www.c-plusplus.net/forum/279664-full">https://www.c-plusplus.net/forum/279664-full</a></p>
<p>lg</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2465338</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2465338</guid><dc:creator><![CDATA[UsernameX]]></dc:creator><pubDate>Mon, 24 Aug 2015 12:03:33 GMT</pubDate></item><item><title><![CDATA[Reply to C++ Problem beim Linken on Mon, 24 Aug 2015 12:18:19 GMT]]></title><description><![CDATA[<p>Ich verwende den GNU Compiler und verwende CodeBlocks als IDE. Habe auch alle Einstellungen bzgl. Compiler und Linker so eingestellt, wie ihm Buch &quot;Der C++ Programmierer&quot; vorgeschrieben und habe trotzdem diesen komischen Fehler, auch bei den Lösungen aus dem Buch?!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2465343</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2465343</guid><dc:creator><![CDATA[maxkla]]></dc:creator><pubDate>Mon, 24 Aug 2015 12:18:19 GMT</pubDate></item><item><title><![CDATA[Reply to C++ Problem beim Linken on Mon, 24 Aug 2015 13:03:02 GMT]]></title><description><![CDATA[<p>Zeig doch mal den vollständigen Fehler (kopiert). Wir wissen immernoch nicht was er nicht linken kann.<br />
Außerdem code dazu.<br />
Sind alle Dateien dem C::B Projekt hinzugefügt? Wenn nicht alle Source kompiliert werden, kann er auch nicht linken.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2465348</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2465348</guid><dc:creator><![CDATA[5cript]]></dc:creator><pubDate>Mon, 24 Aug 2015 13:03:02 GMT</pubDate></item><item><title><![CDATA[Reply to C++ Problem beim Linken on Mon, 24 Aug 2015 13:24:46 GMT]]></title><description><![CDATA[<p>Hier ist der Fehlercode: &quot;|undefined reference to `Datei::Datei(std::__cxx11::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt;)'|<br />
||error: ld returned 1 exit status|<br />
||=== Build failed: 2 error(s), 0 warning(s) (0 minute(s), 0 second(s)) ===|&quot;</p>
<p>Das Programm soll einen Text in einer Datei speichern.<br />
Hier noch der Programmcode:</p>
<p>//main<br />
#include &lt;iostream&gt;<br />
#include &quot;test.h&quot;</p>
<p>using namespace std;</p>
<p>int main(){<br />
Datei objekt(&quot;test.txt&quot;);<br />
}</p>
<p>//Klasse<br />
#ifndef TEST_H<br />
#define TEST_H<br />
#include &lt;fstream&gt;</p>
<p>class Datei<br />
{</p>
<p>public:</p>
<p>Datei (std::string name);<br />
};</p>
<p>#endif</p>
<p>//Implementation<br />
#include &quot;test.h&quot;<br />
#include &lt;string&gt;</p>
<p>Datei::Datei(std::string name)<br />
{<br />
std::ofstream datei(name);<br />
datei &lt;&lt; &quot;Hallo ich bin eine Testdatei&quot;;<br />
}</p>
<p>Hoffentlich ist kein peinlicher Fehler dabei <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f576.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--sunglasses"
      title=":sunglasses:"
      alt="🕶"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2465350</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2465350</guid><dc:creator><![CDATA[maxkla]]></dc:creator><pubDate>Mon, 24 Aug 2015 13:24:46 GMT</pubDate></item><item><title><![CDATA[Reply to C++ Problem beim Linken on Mon, 24 Aug 2015 13:49:57 GMT]]></title><description><![CDATA[<p>Deine Datei mit der Implementation von Datei::Datei wird offensichtlich nicht dazu gelinkt. Ist diese Datei Teil des Projekts? Bei *.cpp Dateien muss deine IDE alle Dateien compilieren und später zusammen linken. Das geht natürlich nur wenn diese bekannt sind. Header werden dagegen auch so gefunden wenn sie im gleichen Ordner liegen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2465351</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2465351</guid><dc:creator><![CDATA[sebi707]]></dc:creator><pubDate>Mon, 24 Aug 2015 13:49:57 GMT</pubDate></item><item><title><![CDATA[Reply to C++ Problem beim Linken on Mon, 24 Aug 2015 14:41:31 GMT]]></title><description><![CDATA[<p>Also mir fällt auf, dass du in der .cpp Datei &lt;string&gt; inkludiert hast. Obwohl du es aber schon im Header der Klasse benutzt also in der .h Datei.<br />
Ich würde bei Klassen alles was du inkludierst schon im Header angeben.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2465369</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2465369</guid><dc:creator><![CDATA[[[global:guest]]]]></dc:creator><pubDate>Mon, 24 Aug 2015 14:41:31 GMT</pubDate></item><item><title><![CDATA[Reply to C++ Problem beim Linken on Mon, 24 Aug 2015 15:40:19 GMT]]></title><description><![CDATA[<p>Aja, das mit dem String ist mir auch grad aufgefallen..ich bin einfach bei CodeBlocks auf Source File gegangen und hab danach eine Klasse erstellt (alles im selben Ordner) war das falsch?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2465386</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2465386</guid><dc:creator><![CDATA[maxkla]]></dc:creator><pubDate>Mon, 24 Aug 2015 15:40:19 GMT</pubDate></item><item><title><![CDATA[Reply to C++ Problem beim Linken on Tue, 25 Aug 2015 08:02:43 GMT]]></title><description><![CDATA[<p>Problem wurde gelöst...dateien waren einfach nicht im gleichen projekt und desshalb hat er sie nicht gefunden!<br />
Danke an euch!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2465474</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2465474</guid><dc:creator><![CDATA[maxkla]]></dc:creator><pubDate>Tue, 25 Aug 2015 08:02:43 GMT</pubDate></item><item><title><![CDATA[Reply to C++ Problem beim Linken on Tue, 25 Aug 2015 09:38:02 GMT]]></title><description><![CDATA[<p>Hast du das was ich dir gesagt habe geändert? Würde mich mal interessieren ob das auch so geht, wie du es zuerst versucht hast.<br />
Ich meine das mit dem String inkludieren. Hab jetzt doch Projekte gesehen, wo viel in der .cpp Datei inkludiert wurde. Dachte immer es wäre besser wenn man sowas immer in die Header Datei packt.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2465486</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2465486</guid><dc:creator><![CDATA[[[global:guest]]]]></dc:creator><pubDate>Tue, 25 Aug 2015 09:38:02 GMT</pubDate></item><item><title><![CDATA[Reply to C++ Problem beim Linken on Tue, 25 Aug 2015 09:58:55 GMT]]></title><description><![CDATA[<p>Bennisen schrieb:</p>
<blockquote>
<p>Hab jetzt doch Projekte gesehen, wo viel in der .cpp Datei inkludiert wurde. Dachte immer es wäre besser wenn man sowas immer in die Header Datei packt.</p>
</blockquote>
<p>Meine Regel dazu ist nur das nötigste in den Header zu packen und wenns geht Forward Declarations für eigene Klassen zu nutzen. In seinem Beispiel würde der Header also nur den <code>string</code> Header laden, weil das direkt für die Deklarationen der Funktionen gebraucht wird. Aber den <code>fstream</code> Header würde ich in die cpp Datei packen, weil dieser nur dort gebraucht wird. Wenn man alles in die Header packt zieht man sich nacher die halbe STL in jede cpp Datei und die Compilezeit wird länger. Durch die Forward Declarations verringert man auch die Abhängigkeiten zwischen den Headern.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2465493</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2465493</guid><dc:creator><![CDATA[sebi707]]></dc:creator><pubDate>Tue, 25 Aug 2015 09:58:55 GMT</pubDate></item><item><title><![CDATA[Reply to C++ Problem beim Linken on Tue, 25 Aug 2015 10:01:27 GMT]]></title><description><![CDATA[<p>Bennisen schrieb:</p>
<blockquote>
<p>Hast du das was ich dir gesagt habe geändert?<br />
Würde mich mal interessieren ob das auch so geht, wie du es zuerst versucht hast.<br />
Ich meine das mit dem String inkludieren. Hab jetzt doch Projekte gesehen, wo viel in der .cpp Datei inkludiert wurde. Dachte immer es wäre besser wenn man sowas immer in die Header Datei packt.</p>
</blockquote>
<p>meiner meinung nach kommt das darauf an wo du die header benutzt/benötigst.<br />
wenn du sie in deinem &quot;eigenen erstellten&quot; header benutzt dann dort wenn du sie nur in der .cpp brauchst dann halt da.</p>
<p>also zumindest mach ich das immer so, hat meiner meinung nach auch den vorteil das ich oben sehe welche header ich benutzt habe... <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f644.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_rolling_eyes"
      title=":rolling_eyes:"
      alt="🙄"
    /></p>
<p>außerdem musst ja nix inkluden was nicht gebraucht wird <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 />
(bzw. warum solltest das tun?)</p>
<p>lg</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2465495</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2465495</guid><dc:creator><![CDATA[UsernameX]]></dc:creator><pubDate>Tue, 25 Aug 2015 10:01:27 GMT</pubDate></item></channel></rss>