<?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[Source einbinden will nicht :(]]></title><description><![CDATA[<p>Ersteinmal Hallo! Schönes Board!<br />
Zu meiner Frage:<br />
Ich habe folgende Dateien:<br />
classdef.h<br />
classdec.cpp<br />
testproject.cpp</p>
<p>classdef.h:</p>
<pre><code>template &lt;class T&gt;
class Test
{
public:
	void SetData(T *theObject);
	T *GetData();
private:
	T *myData;
};
</code></pre>
<p>classdec.cpp</p>
<pre><code>#include &quot;classdef.h&quot;

template &lt;class T&gt;
void Test&lt;T&gt;::SetData(T *theObject)
{
	myData=theObject;
}

template &lt;class T&gt;
T *Test&lt;T&gt;::GetData()
{
	return myData;
}
</code></pre>
<p>testproject.cpp</p>
<pre><code>#include &lt;iostream&gt;
#include &lt;cstdlib&gt;
#include &quot;classdef.h&quot;
using namespace std;
class Data
{
public:
	Data(int Var);
	int getData();
private:
	int myData;
};
int main(int argc, char *argv[])
{
	Data *t=new Data(4);
	Test&lt;Data&gt; Klasse;
	Klasse.SetData(t);
	cout &lt;&lt;Klasse.GetData();
// 	cout &lt;&lt; &quot;Hello, world!&quot; &lt;&lt; endl;

  return EXIT_SUCCESS;
}
</code></pre>
<p>Wenn ich es jetzt make ausführe sagt er mir folgendes:<br />
(makefile mit automake erstellt durch kdevelop)</p>
<p>make all-recursive<br />
make[1]: Gehe in Verzeichnis »/home/chriss/testproject«<br />
Making all in src<br />
make[2]: Gehe in Verzeichnis »/home/chriss/testproject/src«<br />
g++ -DHAVE_CONFIG_H -I. -I. -I.. -g -O2 -c testproject.cpp<br />
In Datei, eingefügt von testproject.cpp:9:<br />
classdef.h:9:3: Warnung: Kein Newline am Dateiende<br />
g++ -DHAVE_CONFIG_H -I. -I. -I.. -g -O2 -c classdek.cpp<br />
In Datei, eingefügt von classdek.cpp:1:<br />
classdef.h:9:3: Warnung: Kein Newline am Dateiende<br />
classdek.cpp:13:2: Warnung: Kein Newline am Dateiende<br />
/bin/sh ../libtool --mode=link g++ -g -O2 -o testproject testproject.o classdek.o<br />
mkdir .libs<br />
g++ -g -O2 -o testproject testproject.o classdek.o<br />
testproject.o: In function <code>main': /home/chriss/testproject/src/testproject.cpp:21: undefined reference to</code>Data::Data(int)'<br />
/home/chriss/testproject/src/testproject.cpp:23: undefined reference to <code>Test&lt;Data&gt;::SetData(Data*)' /home/chriss/testproject/src/testproject.cpp:24: undefined reference to</code>Test&lt;Data&gt;::GetData()'<br />
collect2: ld returned 1 exit status<br />
make[2]: *** [testproject] Fehler 1<br />
make[2]: Verlasse Verzeichnis »/home/chriss/testproject/src«<br />
make[1]: *** [all-recursive] Fehler 1<br />
make[1]: Verlasse Verzeichnis »/home/cmake all-recursive<br />
make[1]: Gehe in Verzeichnis »/home/chriss/testproject«<br />
Making all in src<br />
make[2]: Gehe in Verzeichnis »/home/chriss/testproject/src«<br />
g++ -DHAVE_CONFIG_H -I. -I. -I.. -g -O2 -c testproject.cpp<br />
In Datei, eingefügt von testproject.cpp:9:<br />
classdef.h:9:3: Warnung: Kein Newline am Dateiende<br />
g++ -DHAVE_CONFIG_H -I. -I. -I.. -g -O2 -c classdek.cpp<br />
In Datei, eingefügt von classdek.cpp:1:<br />
classdef.h:9:3: Warnung: Kein Newline am Dateiende<br />
classdek.cpp:13:2: Warnung: Kein Newline am Dateiende<br />
/bin/sh ../libtool --mode=link g++ -g -O2 -o testproject testproject.o classdek.o<br />
mkdir .libs<br />
g++ -g -O2 -o testproject testproject.o classdek.o<br />
testproject.o: In function <code>main': /home/chriss/testproject/src/testproject.cpp:21: undefined reference to</code>Data::Data(int)'<br />
/home/chriss/testproject/src/testproject.cpp:23: undefined reference to <code>Test&lt;Data&gt;::SetData(Data*)' /home/chriss/testproject/src/testproject.cpp:24: undefined reference to</code>Test&lt;Data&gt;::GetData()'<br />
collect2: ld returned 1 exit status<br />
make[2]: *** [testproject] Fehler 1<br />
make[2]: Verlasse Verzeichnis »/home/chriss/testproject/src«<br />
make[1]: *** [all-recursive] Fehler 1<br />
make[1]: Verlasse Verzeichnis »/home/chriss/testproject«<br />
make: *** [all-recursive-am] Fehler 2<br />
hriss/testproject«<br />
make: *** [all-recursive-am] Fehler 2</p>
<p>Stören tut mich das undefined reference. Dies ist zwar nicht mein Originalprojekt aber vom Prinzip her ist es das was ich nicht hinbekomme. Sources korrekt einbinden.</p>
<p>Danke für die Hilfe</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/139233/source-einbinden-will-nicht</link><generator>RSS for Node</generator><lastBuildDate>Sun, 30 Aug 2026 10:38:28 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/139233.rss" rel="self" type="application/rss+xml"/><pubDate>Sat, 04 Mar 2006 17:49:44 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Source einbinden will nicht :( on Sat, 04 Mar 2006 17:49:44 GMT]]></title><description><![CDATA[<p>Ersteinmal Hallo! Schönes Board!<br />
Zu meiner Frage:<br />
Ich habe folgende Dateien:<br />
classdef.h<br />
classdec.cpp<br />
testproject.cpp</p>
<p>classdef.h:</p>
<pre><code>template &lt;class T&gt;
class Test
{
public:
	void SetData(T *theObject);
	T *GetData();
private:
	T *myData;
};
</code></pre>
<p>classdec.cpp</p>
<pre><code>#include &quot;classdef.h&quot;

template &lt;class T&gt;
void Test&lt;T&gt;::SetData(T *theObject)
{
	myData=theObject;
}

template &lt;class T&gt;
T *Test&lt;T&gt;::GetData()
{
	return myData;
}
</code></pre>
<p>testproject.cpp</p>
<pre><code>#include &lt;iostream&gt;
#include &lt;cstdlib&gt;
#include &quot;classdef.h&quot;
using namespace std;
class Data
{
public:
	Data(int Var);
	int getData();
private:
	int myData;
};
int main(int argc, char *argv[])
{
	Data *t=new Data(4);
	Test&lt;Data&gt; Klasse;
	Klasse.SetData(t);
	cout &lt;&lt;Klasse.GetData();
// 	cout &lt;&lt; &quot;Hello, world!&quot; &lt;&lt; endl;

  return EXIT_SUCCESS;
}
</code></pre>
<p>Wenn ich es jetzt make ausführe sagt er mir folgendes:<br />
(makefile mit automake erstellt durch kdevelop)</p>
<p>make all-recursive<br />
make[1]: Gehe in Verzeichnis »/home/chriss/testproject«<br />
Making all in src<br />
make[2]: Gehe in Verzeichnis »/home/chriss/testproject/src«<br />
g++ -DHAVE_CONFIG_H -I. -I. -I.. -g -O2 -c testproject.cpp<br />
In Datei, eingefügt von testproject.cpp:9:<br />
classdef.h:9:3: Warnung: Kein Newline am Dateiende<br />
g++ -DHAVE_CONFIG_H -I. -I. -I.. -g -O2 -c classdek.cpp<br />
In Datei, eingefügt von classdek.cpp:1:<br />
classdef.h:9:3: Warnung: Kein Newline am Dateiende<br />
classdek.cpp:13:2: Warnung: Kein Newline am Dateiende<br />
/bin/sh ../libtool --mode=link g++ -g -O2 -o testproject testproject.o classdek.o<br />
mkdir .libs<br />
g++ -g -O2 -o testproject testproject.o classdek.o<br />
testproject.o: In function <code>main': /home/chriss/testproject/src/testproject.cpp:21: undefined reference to</code>Data::Data(int)'<br />
/home/chriss/testproject/src/testproject.cpp:23: undefined reference to <code>Test&lt;Data&gt;::SetData(Data*)' /home/chriss/testproject/src/testproject.cpp:24: undefined reference to</code>Test&lt;Data&gt;::GetData()'<br />
collect2: ld returned 1 exit status<br />
make[2]: *** [testproject] Fehler 1<br />
make[2]: Verlasse Verzeichnis »/home/chriss/testproject/src«<br />
make[1]: *** [all-recursive] Fehler 1<br />
make[1]: Verlasse Verzeichnis »/home/cmake all-recursive<br />
make[1]: Gehe in Verzeichnis »/home/chriss/testproject«<br />
Making all in src<br />
make[2]: Gehe in Verzeichnis »/home/chriss/testproject/src«<br />
g++ -DHAVE_CONFIG_H -I. -I. -I.. -g -O2 -c testproject.cpp<br />
In Datei, eingefügt von testproject.cpp:9:<br />
classdef.h:9:3: Warnung: Kein Newline am Dateiende<br />
g++ -DHAVE_CONFIG_H -I. -I. -I.. -g -O2 -c classdek.cpp<br />
In Datei, eingefügt von classdek.cpp:1:<br />
classdef.h:9:3: Warnung: Kein Newline am Dateiende<br />
classdek.cpp:13:2: Warnung: Kein Newline am Dateiende<br />
/bin/sh ../libtool --mode=link g++ -g -O2 -o testproject testproject.o classdek.o<br />
mkdir .libs<br />
g++ -g -O2 -o testproject testproject.o classdek.o<br />
testproject.o: In function <code>main': /home/chriss/testproject/src/testproject.cpp:21: undefined reference to</code>Data::Data(int)'<br />
/home/chriss/testproject/src/testproject.cpp:23: undefined reference to <code>Test&lt;Data&gt;::SetData(Data*)' /home/chriss/testproject/src/testproject.cpp:24: undefined reference to</code>Test&lt;Data&gt;::GetData()'<br />
collect2: ld returned 1 exit status<br />
make[2]: *** [testproject] Fehler 1<br />
make[2]: Verlasse Verzeichnis »/home/chriss/testproject/src«<br />
make[1]: *** [all-recursive] Fehler 1<br />
make[1]: Verlasse Verzeichnis »/home/chriss/testproject«<br />
make: *** [all-recursive-am] Fehler 2<br />
hriss/testproject«<br />
make: *** [all-recursive-am] Fehler 2</p>
<p>Stören tut mich das undefined reference. Dies ist zwar nicht mein Originalprojekt aber vom Prinzip her ist es das was ich nicht hinbekomme. Sources korrekt einbinden.</p>
<p>Danke für die Hilfe</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1008651</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1008651</guid><dc:creator><![CDATA[christiane1]]></dc:creator><pubDate>Sat, 04 Mar 2006 17:49:44 GMT</pubDate></item><item><title><![CDATA[Reply to Source einbinden will nicht :( on Sat, 04 Mar 2006 17:54:19 GMT]]></title><description><![CDATA[<p><a href="http://www.c-plusplus.net/forum/viewtopic-var-t-is-39467.html" rel="nofollow">http://www.c-plusplus.net/forum/viewtopic-var-t-is-39467.html</a><br />
Bitte zu erst <strong>suchen</strong>, dieses Problem ist wirklich sehr geläufig.</p>
<p>Außerdem existiert keine Implementierung für Data::Data (int).</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1008656</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1008656</guid><dc:creator><![CDATA[.filmor]]></dc:creator><pubDate>Sat, 04 Mar 2006 17:54:19 GMT</pubDate></item><item><title><![CDATA[Reply to Source einbinden will nicht :( on Sat, 04 Mar 2006 18:00:21 GMT]]></title><description><![CDATA[<p>Also erstmal entschuldigung! Habe gesucht aber wirklich nichts gefunden. Suchanfrage:<br />
Source einbinden<br />
templates einbinden<br />
hatte nichts gebracht deshalb meine Frage. Nochmals entschuldigung. Und Respekt für die schnelle antwortzeit auf diesem Board.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1008664</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1008664</guid><dc:creator><![CDATA[christiane1]]></dc:creator><pubDate>Sat, 04 Mar 2006 18:00:21 GMT</pubDate></item></channel></rss>