<?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[Instanziieren einer eigenen Klasse]]></title><description><![CDATA[<p>Ich hab Probleme damit ein Objekt von einer selbst geschriebenen Klasse zu erzeugen:</p>
<p>In der MyClass.h steht:</p>
<pre><code class="language-cpp">class MyClass
{
public:
    MyClass(std::string MyString);
};
</code></pre>
<p>In der MyClass.cpp steht:</p>
<pre><code class="language-cpp">class MyClass
{

MyClass::MyClass(std::string MyString)
{
    // Konstruktor Code
};

};
</code></pre>
<p>Jetzt versuche ich von dieser Klasse ein Object zu erzeugen in meiner main.cpp.</p>
<pre><code class="language-cpp">include &quot;MyClass.h&quot;
...
MyClass *MyClassObject;
...
void MyVoid()
{
   std::string xyz;
   MyClassObject = new MyClass(xyz);
}
</code></pre>
<p>Dann bekomme ich in der Zeile wo ich das new aufrufe folgenden Fehler:<br />
&quot;undefined reference to `MyClass::MyClass(std::string)'&quot;</p>
<p>Ich kriege übrigens den gleichen Fehler wenn ich das (string) weglasse und einen parameterlosen Konstruktor (Standardkonstruktor) verwende.</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/253092/instanziieren-einer-eigenen-klasse</link><generator>RSS for Node</generator><lastBuildDate>Mon, 14 Sep 2026 02:06:03 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/253092.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 28 Oct 2009 14:17:14 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Instanziieren einer eigenen Klasse on Wed, 28 Oct 2009 14:17:14 GMT]]></title><description><![CDATA[<p>Ich hab Probleme damit ein Objekt von einer selbst geschriebenen Klasse zu erzeugen:</p>
<p>In der MyClass.h steht:</p>
<pre><code class="language-cpp">class MyClass
{
public:
    MyClass(std::string MyString);
};
</code></pre>
<p>In der MyClass.cpp steht:</p>
<pre><code class="language-cpp">class MyClass
{

MyClass::MyClass(std::string MyString)
{
    // Konstruktor Code
};

};
</code></pre>
<p>Jetzt versuche ich von dieser Klasse ein Object zu erzeugen in meiner main.cpp.</p>
<pre><code class="language-cpp">include &quot;MyClass.h&quot;
...
MyClass *MyClassObject;
...
void MyVoid()
{
   std::string xyz;
   MyClassObject = new MyClass(xyz);
}
</code></pre>
<p>Dann bekomme ich in der Zeile wo ich das new aufrufe folgenden Fehler:<br />
&quot;undefined reference to `MyClass::MyClass(std::string)'&quot;</p>
<p>Ich kriege übrigens den gleichen Fehler wenn ich das (string) weglasse und einen parameterlosen Konstruktor (Standardkonstruktor) verwende.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1799704</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1799704</guid><dc:creator><![CDATA[[[global:guest]]]]></dc:creator><pubDate>Wed, 28 Oct 2009 14:17:14 GMT</pubDate></item><item><title><![CDATA[Reply to Instanziieren einer eigenen Klasse on Wed, 28 Oct 2009 14:26:48 GMT]]></title><description><![CDATA[<p>Du musst deine MyClass.cpp zu einer Objektdatei kompilieren und diese dazulinken. Wenn du Hilfe brauchst, wie man sowas macht, müsstest du uns mehr darüber verraten, welche Entwicklungswerkzeuge du benutzt.</p>
<p>Ein Beispiel: Wenn du den Compiler von Hand aufrufst, dann kann man das bei den gängigen Compilern ganz einfach so machen:</p>
<pre><code>CC MyClass.cpp main.cpp -o gewünschter_name_des_programms
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1799709</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1799709</guid><dc:creator><![CDATA[SeppJ]]></dc:creator><pubDate>Wed, 28 Oct 2009 14:26:48 GMT</pubDate></item><item><title><![CDATA[Reply to Instanziieren einer eigenen Klasse on Wed, 28 Oct 2009 14:27:35 GMT]]></title><description><![CDATA[<p>class MyClass {} in MyClass.cpp weglassen und dort MyClass.h einbinden, sonst definierst du in dieser Übersetzungseinheit einfach eine zweite Klasse MyClass, was ja nicht Sinn der Sache ist.<br />
Dass der Konstruktor zu MyClass gehört, erkennt der Compiler bereits an MyClass::MyClass.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1799710</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1799710</guid><dc:creator><![CDATA[Nanyuki]]></dc:creator><pubDate>Wed, 28 Oct 2009 14:27:35 GMT</pubDate></item><item><title><![CDATA[Reply to Instanziieren einer eigenen Klasse on Wed, 28 Oct 2009 14:32:00 GMT]]></title><description><![CDATA[<p>@ Nanyuki:<br />
Super! Das wars! Jetzt funktioniert es <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title=":)"
      alt="🙂"
    /></p>
<p>Vielen Dank für die schnelle und gute Antwort!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1799717</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1799717</guid><dc:creator><![CDATA[[[global:guest]]]]></dc:creator><pubDate>Wed, 28 Oct 2009 14:32:00 GMT</pubDate></item></channel></rss>