<?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[Header files]]></title><description><![CDATA[<p>Ich versuche gerade mein erstes größeres Projekt mit Qt zu schreiben und habe wohl ein Problem beim Einbinden der Header files.<br />
Jedenfalls bekomme ich ständig eine Fehlermeldung dieser Art, je nach dem wo ich die .h-files includiere.</p>
<pre><code>In file included from ship.h:9,
                 from fleet.h:7,
                 from player.h:6,
                 from battleship.h:5,
                 from battleship.cpp:1:
boxbutton.h:21: error: syntax error before `*' token
make: *** [battleship.o] Error 1
</code></pre>
<p>Meine Headerfiles haben am Anfang und Ende jeweils dieses:</p>
<pre><code class="language-cpp">#ifndef SHIP_H
#define SHIP_H
   ...
#endif
</code></pre>
<p>Dem Headerfile dementsprechend angepasst natürlich.</p>
<p>Ich hab nun glaub wirklich schon fast alle Kombinationen ausprobiert und auch im Web schon gesucht (aber da findet man zu &quot;include&quot; nur allen anderen Mist).</p>
<p>Hat mir jemand vielleicht eine Seite oder einen Tipp wie man die #includes sinnvoll benutzt?</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/149853/header-files</link><generator>RSS for Node</generator><lastBuildDate>Sat, 05 Sep 2026 09:39:07 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/149853.rss" rel="self" type="application/rss+xml"/><pubDate>Sat, 10 Jun 2006 12:40:05 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Header files on Sat, 10 Jun 2006 12:40:05 GMT]]></title><description><![CDATA[<p>Ich versuche gerade mein erstes größeres Projekt mit Qt zu schreiben und habe wohl ein Problem beim Einbinden der Header files.<br />
Jedenfalls bekomme ich ständig eine Fehlermeldung dieser Art, je nach dem wo ich die .h-files includiere.</p>
<pre><code>In file included from ship.h:9,
                 from fleet.h:7,
                 from player.h:6,
                 from battleship.h:5,
                 from battleship.cpp:1:
boxbutton.h:21: error: syntax error before `*' token
make: *** [battleship.o] Error 1
</code></pre>
<p>Meine Headerfiles haben am Anfang und Ende jeweils dieses:</p>
<pre><code class="language-cpp">#ifndef SHIP_H
#define SHIP_H
   ...
#endif
</code></pre>
<p>Dem Headerfile dementsprechend angepasst natürlich.</p>
<p>Ich hab nun glaub wirklich schon fast alle Kombinationen ausprobiert und auch im Web schon gesucht (aber da findet man zu &quot;include&quot; nur allen anderen Mist).</p>
<p>Hat mir jemand vielleicht eine Seite oder einen Tipp wie man die #includes sinnvoll benutzt?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1075065</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1075065</guid><dc:creator><![CDATA[Insomnia]]></dc:creator><pubDate>Sat, 10 Jun 2006 12:40:05 GMT</pubDate></item><item><title><![CDATA[Reply to Header files on Sat, 10 Jun 2006 12:58:08 GMT]]></title><description><![CDATA[<p>also ich interpretiere diese fehlermeldung folgendermaßen:</p>
<p>Du hast in der Datei &quot;boxbutton.h&quot; in Linie 21 einen Syntaxfehler vor dem &quot;*&quot; Zeichen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1075087</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1075087</guid><dc:creator><![CDATA[helfer]]></dc:creator><pubDate>Sat, 10 Jun 2006 12:58:08 GMT</pubDate></item><item><title><![CDATA[Reply to Header files on Sat, 10 Jun 2006 13:00:54 GMT]]></title><description><![CDATA[<p>Weis auch nicht wieso die Fehlermeldung so seltsam ist. Es ist jedoch kein Syntaxfehler.<br />
Der Fehler liegt eher daran, dass zwei .h files sich gegenseitig benötigen und irgendwie kommt daher der Mist.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1075089</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1075089</guid><dc:creator><![CDATA[Insomnia]]></dc:creator><pubDate>Sat, 10 Jun 2006 13:00:54 GMT</pubDate></item><item><title><![CDATA[Reply to Header files on Sat, 10 Jun 2006 13:03:37 GMT]]></title><description><![CDATA[<p>Gib mal den Quelltext der &quot;boxbutton.h&quot;. Vorallem Linie 21. Da steht doch ganz klar in der Meldung, dass dort ein Syntaxfehler ist. Testweise kannst du diese Linie vielleicht auch mal auskommentieren und dann kompilieren.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1075094</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1075094</guid><dc:creator><![CDATA[helfer]]></dc:creator><pubDate>Sat, 10 Jun 2006 13:03:37 GMT</pubDate></item><item><title><![CDATA[Reply to Header files on Sat, 10 Jun 2006 15:10:30 GMT]]></title><description><![CDATA[<p>Ich kann auch nur raten, du solltest mehr Code / Infos geben. Ein Minimalbeispiel ist immer gut.</p>
<p>Versuch mal in boxbutton.h die battleship.h anstatt der battleship.cpp zu inkludieren.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1075178</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1075178</guid><dc:creator><![CDATA[FireFlow]]></dc:creator><pubDate>Sat, 10 Jun 2006 15:10:30 GMT</pubDate></item><item><title><![CDATA[Reply to Header files on Sat, 10 Jun 2006 15:30:53 GMT]]></title><description><![CDATA[<p>Das Problem ist eigentlich ein anderes und es kann sein, dass es vielleicht garnicht möglich ist, ich möchte es mal so darstellen:</p>
<pre><code class="language-cpp">//main.cpp
#include &quot;a.h&quot;
#include &quot;b.h&quot;

int main( int argc, char **argv )
{
	A a;
	B b;

	return 0;
}
</code></pre>
<pre><code class="language-cpp">//a.h
#ifndef A_H
#define A_H

#include &quot;b.h&quot;

class A
{
public:
	A();	// Konstruktor
	B b;
	int i;
};
#endif
</code></pre>
<pre><code class="language-cpp">//b.h
#ifndef B_H
#define B_H

#include &quot;a.h&quot;

class B
{
public:
	B();	// Konstruktor
	//A a;
	int i;
};
#endif
</code></pre>
<p>Das ist ein Henne-Ei Problem.<br />
A braucht B und umgekehrt.<br />
Gibt es dafür eine Lösung oder versuche ich die ganze Zeit irgend etwas zu machen was garnicht möglich ist?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1075183</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1075183</guid><dc:creator><![CDATA[Insomnia]]></dc:creator><pubDate>Sat, 10 Jun 2006 15:30:53 GMT</pubDate></item><item><title><![CDATA[Reply to Header files on Sat, 10 Jun 2006 18:57:50 GMT]]></title><description><![CDATA[<p>ich nehme an, du willst das auskommentierte wegnehmen, dann:</p>
<p>A enthält ein B enthält ein A enthält ein B enthält ein A enthält ein B enthält ein A enthält ein B enthält ein A enthält ein B enthält ein A enthält ein B enthält ein A enthält ein B enthält ein A enthält ein B enthält ein A enthält ein B enthält ein A enthält ein B enthält ein A enthält ein B enthält ein A enthält ein B enthält ein A enthält ein B enthält ein A enthält ein B enthält ein A enthält ein B enthält ein A enthält ein B enthält ein A enthält ein B enthält ein A enthält ein B enthält ein A enthält ein B enthält ein A enthält ein B enthält ein A enthält ein B enthält ein A enthält ein B enthält ein A enthält ein B enthält ein A enthält ein B enthält ein A enthält ein B enthält ein A enthält ein B enthält ein A enthält ein B enthält ein A enthält ein B enthält ein A enthält ein B enthält ein A enthält ein B enthält ein A enthält ein B enthält ein A enthält ein B enthält ein A enthält ein B enthält ein A enthält ein B enthält ein A enthält ein B enthält ein A enthält ein B enthält ein A enthält ein B enthält ein A enthält ein B enthält ein A enthält ein B enthält ein A enthält ein B enthält ein A enthält ein B enthält ein A enthält ein B enthält ein A enthält ein B enthält ein A enthält ein B enthält ein A enthält ein B enthält ein A enthält ein B enthält ein A enthält ein B enthält ein A enthält ein B enthält ein A enthält ein B enthält ein A enthält ein B enthält ein A enthält ein B enthält ein A enthält ein B enthält ein A enthält ein B enthält ein A enthält ein B enthält ein A enthält ein B enthält ein A enthält ein B enthält ein A enthält ein B enthält ein A enthält ein B enthält ein A enthält ein B enthält ein A enthält ein B enthält ein A enthält ein B enthält ein A enthält ein B enthält ein A enthält ein B enthält ein A enthält ein B enthält ein A enthält ein B enthält ein A enthält ein B enthält ein A enthält ein B enthält ein A ... nein, dafür gibt es keine lösung.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1075277</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1075277</guid><dc:creator><![CDATA[camper]]></dc:creator><pubDate>Sat, 10 Jun 2006 18:57:50 GMT</pubDate></item><item><title><![CDATA[Reply to Header files on Sun, 11 Jun 2006 09:04:06 GMT]]></title><description><![CDATA[<p>Was spricht dagegen, in &quot;b.h&quot; eine Forward-Deklaration mittels</p>
<pre><code class="language-cpp">class A;
</code></pre>
<p>zu benutzen und in der Klassendefiniton einen Zeiger-auf-A (A*) zu nehmen, der im Konstruktor von B() (in ÜE definiert, die &quot;b.h&quot; nun includiert) mit new initialisiert wird? Natürlich wieder brav delete aufrufen im Destuktor anschließend..</p>
<p>Ist das unschön?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1075436</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1075436</guid><dc:creator><![CDATA[ChrissiB]]></dc:creator><pubDate>Sun, 11 Jun 2006 09:04:06 GMT</pubDate></item><item><title><![CDATA[Reply to Header files on Sun, 11 Jun 2006 09:05:33 GMT]]></title><description><![CDATA[<p>Ob das unschön ist darf diskutiert werden, jedenfalls geht es in dem Fall garnicht anders <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="😉"
    /></p>
<p>(Eine Referenz kann man mit Forward-Decl auch nutzen, aber das hilft hier nicht besonders)</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1075437</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1075437</guid><dc:creator><![CDATA[LordJaxom]]></dc:creator><pubDate>Sun, 11 Jun 2006 09:05:33 GMT</pubDate></item></channel></rss>