<?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[Klassenmethoden auslagern]]></title><description><![CDATA[<p>hi,</p>
<p>ich möchte einige Methoden einer Klasse der Übersichtlichkeit wegen in eine andere<br />
Datei auslagern. Nun benutzen diese Methoden aber Objekte der Klasse, die Sie nun<br />
nicht mehr kennen....<br />
Kann jemand helfen?</p>
<p>gruß FreeSilver</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/128610/klassenmethoden-auslagern</link><generator>RSS for Node</generator><lastBuildDate>Tue, 25 Aug 2026 20:07:12 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/128610.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 05 Dec 2005 14:32:54 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Klassenmethoden auslagern on Mon, 05 Dec 2005 14:32:54 GMT]]></title><description><![CDATA[<p>hi,</p>
<p>ich möchte einige Methoden einer Klasse der Übersichtlichkeit wegen in eine andere<br />
Datei auslagern. Nun benutzen diese Methoden aber Objekte der Klasse, die Sie nun<br />
nicht mehr kennen....<br />
Kann jemand helfen?</p>
<p>gruß FreeSilver</p>
]]></description><link>https://www.c-plusplus.net/forum/post/934957</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/934957</guid><dc:creator><![CDATA[FreeSilver]]></dc:creator><pubDate>Mon, 05 Dec 2005 14:32:54 GMT</pubDate></item><item><title><![CDATA[Reply to Klassenmethoden auslagern on Mon, 05 Dec 2005 14:43:56 GMT]]></title><description><![CDATA[<p>Naja, wenn die Funktion auf Attribute einer Instanz deiner Klasse zugreifen soll, dann ist es doch schon sinnvoll die Funktion als Member der Klasse zu implementieren.</p>
<p>Du kannst die Implementierungen der Member aber ohne weiteres von der Klassendeklaration trennen. Die Klassendeklaration kommt in einen Header und die Member in eine Codedatei.</p>
<pre><code class="language-cpp">//Headerdatei: Foo.hpp
class Foo {
  unsigned int bar;
public:
  void do_stuff(); //nur deklariert, implementation in der Codedatei
};
</code></pre>
<pre><code class="language-cpp">//Codedatei: Foo.cpp
#include &quot;Foo.hpp&quot;

void Foo::do_stuff() {
  // hier dein Code
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/934972</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/934972</guid><dc:creator><![CDATA[rüdiger]]></dc:creator><pubDate>Mon, 05 Dec 2005 14:43:56 GMT</pubDate></item><item><title><![CDATA[Reply to Klassenmethoden auslagern on Mon, 05 Dec 2005 14:51:37 GMT]]></title><description><![CDATA[<p>ja, das ist schon klar, nur ich will keine extra klasse für die methoden anlegen, ehen ein &quot;Methodendatei&quot; ähnlich wie ne lib</p>
]]></description><link>https://www.c-plusplus.net/forum/post/934982</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/934982</guid><dc:creator><![CDATA[FreeSilver]]></dc:creator><pubDate>Mon, 05 Dec 2005 14:51:37 GMT</pubDate></item><item><title><![CDATA[Reply to Klassenmethoden auslagern on Mon, 05 Dec 2005 14:53:44 GMT]]></title><description><![CDATA[<p>Etwas Context? <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>#include doch in der Datei, in der Du die Methoden auslagerst auch den Header für die Klasse. Dann sollte der Objekttyp wieder bekannt sein <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/934987</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/934987</guid><dc:creator><![CDATA[LordJaxom]]></dc:creator><pubDate>Mon, 05 Dec 2005 14:53:44 GMT</pubDate></item><item><title><![CDATA[Reply to Klassenmethoden auslagern on Mon, 05 Dec 2005 14:57:07 GMT]]></title><description><![CDATA[<p>Hab ich bereits</p>
<p>#include EMMA_Image.h</p>
<p>void gaussFilterImage(EMMA_Image &amp;image, ... );</p>
<p>EMMA_Image ist meine Klasse</p>
<p>Fehler ist : error C2039: 'gaussFilterImage' : is not a member of 'EMMA_Image'<br />
Nächster Fehler : 'EMMA_Image' : is not a class or namespace name</p>
]]></description><link>https://www.c-plusplus.net/forum/post/934992</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/934992</guid><dc:creator><![CDATA[FreeSilver]]></dc:creator><pubDate>Mon, 05 Dec 2005 14:57:07 GMT</pubDate></item><item><title><![CDATA[Reply to Klassenmethoden auslagern on Mon, 05 Dec 2005 14:58:54 GMT]]></title><description><![CDATA[<p>Die Klasse hattest du doch schon vorher, oder etwa nicht? Ansonsten kannst du auch nur den Header (mit deinen Klassendeklarationen) an den Anfang der Lib includen:</p>
<pre><code class="language-cpp">//foo.h
class Foo {
  unsigned int bar;
public:
  void do_stuff(); //nur deklariert, implementation in der Codedatei
  unsigned int getval() const;
};

//foo.cpp
#include &quot;foo.h&quot;
void Foo::do_stuff()
{
  //...
}
unsigned int Foo::getval() const
{return bar;}

//lib.h
#include &quot;foo.h&quot;
Foo getSomeFoo();
void printFoo(const Foo&amp; f);
//...

//lib.cpp
#include &quot;lib.h&quot;
Foo getSomeFoo()
{
  return Foo();
}

void printFoo(const Foo&amp; f);
{
  cout&lt;&lt;&quot;Foo Object:&quot;&lt;&lt;f.bar&lt;&lt;endl;
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/934995</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/934995</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Mon, 05 Dec 2005 14:58:54 GMT</pubDate></item><item><title><![CDATA[Reply to Klassenmethoden auslagern on Mon, 05 Dec 2005 15:11:09 GMT]]></title><description><![CDATA[<p>Ja, genau so hatte ich es eigentlich gemacht, nur<br />
bei</p>
<p><a href="//lib.h">//lib.h</a><br />
#include &quot;foo.h&quot;<br />
Foo getSomeFoo();<br />
void printFoo(const Foo&amp; f);<br />
//...</p>
<p>ist getSomeFoo() kein Member und Foo&amp; f kennt er auch nit</p>
]]></description><link>https://www.c-plusplus.net/forum/post/935015</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/935015</guid><dc:creator><![CDATA[FreeSilver]]></dc:creator><pubDate>Mon, 05 Dec 2005 15:11:09 GMT</pubDate></item><item><title><![CDATA[Reply to Klassenmethoden auslagern on Mon, 05 Dec 2005 15:19:06 GMT]]></title><description><![CDATA[<p>Also da hast du irgendetwas falsch gemacht. Wieso sollte getSomeFoo() ein Member sein?<br />
(schau mal nach, ob du eventuell die Klassendeklaration verhunzt hast, ein fehlendes ; am Ende kann man z.B. leicht übersehen)</p>
]]></description><link>https://www.c-plusplus.net/forum/post/935026</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/935026</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Mon, 05 Dec 2005 15:19:06 GMT</pubDate></item><item><title><![CDATA[Reply to Klassenmethoden auslagern on Mon, 05 Dec 2005 15:26:52 GMT]]></title><description><![CDATA[<p>ok, thx für die hilfe</p>
]]></description><link>https://www.c-plusplus.net/forum/post/935038</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/935038</guid><dc:creator><![CDATA[FreeSilver]]></dc:creator><pubDate>Mon, 05 Dec 2005 15:26:52 GMT</pubDate></item></channel></rss>