<?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[klasse wird nicht gefunden - ich bin ratlos!]]></title><description><![CDATA[<p>Hallo zusammen,<br />
ich bin nun seit einigen Tagen damit beschaeftigt diesen daemlichen Bug aus meinem Code zu bekommen, leider ohne Erfolg. Ich verstehe absolut nicht was ich falsch mache und bin langsam echt ratlos.. Sollte also jemand von euch wissen wo der Haken ist bitte befreit mich aus meiner Verzweiflung...</p>
<p>Ich habe derzeit eine Klasse FrameWork.h/.cpp die abstract ist. Davon abgeleitet gibt es die Klasse FrameWork_GUI.h/.cpp die die abstrakten Methoden definieren soll. Dazu hat die Klasse FrameWork einige Member-Variablen die das FrameWork in ihren Konstruktor uebergeben bekommen sollen (also z.B. ModelContainer mc = new ModelContainer(this) in FrameWork.cpp). Soweit so gut..</p>
<p>Nun habe ich also in der Klasse ModelContainer sowie in FrameWork_GUI und allen anderen Klassen die FrameWork kennen sollten natuerlich den header auch included... dennoch scheint die Klasse FrameWork nicht gefunden zu werden..\</p>
<p>Hier mein Code:</p>
<p>FrameWork.h:</p>
<pre><code class="language-cpp">#ifndef _framework_
#define _framework_

#include &lt;string&gt;
#include &lt;map&gt;
#include &lt;iostream&gt;
#include &lt;fstream&gt;
#include &quot;FeatureVector.h&quot;
#include &quot;ModelContainer.h&quot;
#include &quot;FeatureExtraction.h&quot;
#include &quot;HebbConnections.h&quot;
#include &quot;ModelContainer.h&quot;
#include &quot;ImageHandler.h&quot;
#include &quot;./Fundamental/ConfigReader.h&quot;
#include &quot;./ImageProcessing/Formation/YUVImage.h&quot;
#include &quot;./Structures/TribotsException.h&quot;
#include &quot;iGRLVQ.h&quot;
#include &quot;PostProcessing.h&quot;

class FrameWork {
	public:
		void init();
		virtual void output(int type, std::string) = 0;

	private:
		HebbConnections* hebb;
		ModelContainer* models;
		ModelContainer* trainData;
		ModelContainer* testData;
		FeatureExtraction* extractor;

		ImageHandler* ih;
		FeatureVector* extracted;
		YUVImage* currentImage;
		iGRLVQ* learner;

		std::map&lt;int, std::string&gt; indexImageMap;
};

#endif /*_FrameWork_*/
</code></pre>
<p>FrameWork.cpp:</p>
<pre><code class="language-cpp">#include &quot;FrameWork.h&quot;

void FrameWork::init() {
	extractor = new FeatureExtraction(this);
	hebb = new HebbConnections(this);
	models = new ModelContainer(this);
	trainData = new ModelContainer(this);
	testData = new ModelContainer(this);
	ih = new ImageHandler(this);
	learner = new iGRLVQ(this,models,NULL);
}
</code></pre>
<p>und hier nun die FrameWork_GUI.h</p>
<pre><code class="language-cpp">#ifndef _framework_gui_
#define _framework_gui_

#include &lt;iostream&gt;
#include &quot;FrameWork.h&quot;

class FrameWork_GUI : public FrameWork {
	void output(int type, std::string);
};

#endif /*_FrameWork_GUI_*/
</code></pre>
<p>und die .cpp von FrameWork_GUI (stark vereinfacht):</p>
<pre><code class="language-cpp">#include &quot;FrameWork_GUI.h&quot;

void FrameWork_GUI::output(int type, std::string str) {
	std::cout &lt;&lt; &quot;test&quot;;
}
</code></pre>
<p>So und hier geht es schon los dass ich den Compilerfehler bekomme:</p>
<pre><code>FrameWork_GUI.h:12: error: expected class-name before ‘{’ token
ModelContainer.h:63: error: expected `)' before ‘*’ token
ModelContainer.h:64: error: expected `)' before ‘*’ token
ModelContainer.h:113: error: ISO C++ forbids declaration of ‘FrameWork’ with no type
</code></pre>
<p>er erkennt also FrameWork ueberhaupt nicht als Klasse.. wie kommt es?<br />
Ausserdem haben alle anderen Klassen die FrameWork includen und verwenden Compilerfehler an jeder stelle wo sie verwendet werden...</p>
<p>Ich bin ratlos und komme hier leider nicht weiter.. Kann mir evtl jemand helfen?</p>
<p>PS: Koennte es ein problem seind ass ModelContainer FrameWork included und FrameWork wiederrum ModelContainer? An sich nicht oder? Ich habe ja ifndef,etc genutzt</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/156283/klasse-wird-nicht-gefunden-ich-bin-ratlos</link><generator>RSS for Node</generator><lastBuildDate>Tue, 08 Sep 2026 19:04:49 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/156283.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 15 Aug 2006 12:29:52 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to klasse wird nicht gefunden - ich bin ratlos! on Tue, 15 Aug 2006 12:29:52 GMT]]></title><description><![CDATA[<p>Hallo zusammen,<br />
ich bin nun seit einigen Tagen damit beschaeftigt diesen daemlichen Bug aus meinem Code zu bekommen, leider ohne Erfolg. Ich verstehe absolut nicht was ich falsch mache und bin langsam echt ratlos.. Sollte also jemand von euch wissen wo der Haken ist bitte befreit mich aus meiner Verzweiflung...</p>
<p>Ich habe derzeit eine Klasse FrameWork.h/.cpp die abstract ist. Davon abgeleitet gibt es die Klasse FrameWork_GUI.h/.cpp die die abstrakten Methoden definieren soll. Dazu hat die Klasse FrameWork einige Member-Variablen die das FrameWork in ihren Konstruktor uebergeben bekommen sollen (also z.B. ModelContainer mc = new ModelContainer(this) in FrameWork.cpp). Soweit so gut..</p>
<p>Nun habe ich also in der Klasse ModelContainer sowie in FrameWork_GUI und allen anderen Klassen die FrameWork kennen sollten natuerlich den header auch included... dennoch scheint die Klasse FrameWork nicht gefunden zu werden..\</p>
<p>Hier mein Code:</p>
<p>FrameWork.h:</p>
<pre><code class="language-cpp">#ifndef _framework_
#define _framework_

#include &lt;string&gt;
#include &lt;map&gt;
#include &lt;iostream&gt;
#include &lt;fstream&gt;
#include &quot;FeatureVector.h&quot;
#include &quot;ModelContainer.h&quot;
#include &quot;FeatureExtraction.h&quot;
#include &quot;HebbConnections.h&quot;
#include &quot;ModelContainer.h&quot;
#include &quot;ImageHandler.h&quot;
#include &quot;./Fundamental/ConfigReader.h&quot;
#include &quot;./ImageProcessing/Formation/YUVImage.h&quot;
#include &quot;./Structures/TribotsException.h&quot;
#include &quot;iGRLVQ.h&quot;
#include &quot;PostProcessing.h&quot;

class FrameWork {
	public:
		void init();
		virtual void output(int type, std::string) = 0;

	private:
		HebbConnections* hebb;
		ModelContainer* models;
		ModelContainer* trainData;
		ModelContainer* testData;
		FeatureExtraction* extractor;

		ImageHandler* ih;
		FeatureVector* extracted;
		YUVImage* currentImage;
		iGRLVQ* learner;

		std::map&lt;int, std::string&gt; indexImageMap;
};

#endif /*_FrameWork_*/
</code></pre>
<p>FrameWork.cpp:</p>
<pre><code class="language-cpp">#include &quot;FrameWork.h&quot;

void FrameWork::init() {
	extractor = new FeatureExtraction(this);
	hebb = new HebbConnections(this);
	models = new ModelContainer(this);
	trainData = new ModelContainer(this);
	testData = new ModelContainer(this);
	ih = new ImageHandler(this);
	learner = new iGRLVQ(this,models,NULL);
}
</code></pre>
<p>und hier nun die FrameWork_GUI.h</p>
<pre><code class="language-cpp">#ifndef _framework_gui_
#define _framework_gui_

#include &lt;iostream&gt;
#include &quot;FrameWork.h&quot;

class FrameWork_GUI : public FrameWork {
	void output(int type, std::string);
};

#endif /*_FrameWork_GUI_*/
</code></pre>
<p>und die .cpp von FrameWork_GUI (stark vereinfacht):</p>
<pre><code class="language-cpp">#include &quot;FrameWork_GUI.h&quot;

void FrameWork_GUI::output(int type, std::string str) {
	std::cout &lt;&lt; &quot;test&quot;;
}
</code></pre>
<p>So und hier geht es schon los dass ich den Compilerfehler bekomme:</p>
<pre><code>FrameWork_GUI.h:12: error: expected class-name before ‘{’ token
ModelContainer.h:63: error: expected `)' before ‘*’ token
ModelContainer.h:64: error: expected `)' before ‘*’ token
ModelContainer.h:113: error: ISO C++ forbids declaration of ‘FrameWork’ with no type
</code></pre>
<p>er erkennt also FrameWork ueberhaupt nicht als Klasse.. wie kommt es?<br />
Ausserdem haben alle anderen Klassen die FrameWork includen und verwenden Compilerfehler an jeder stelle wo sie verwendet werden...</p>
<p>Ich bin ratlos und komme hier leider nicht weiter.. Kann mir evtl jemand helfen?</p>
<p>PS: Koennte es ein problem seind ass ModelContainer FrameWork included und FrameWork wiederrum ModelContainer? An sich nicht oder? Ich habe ja ifndef,etc genutzt</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1117547</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1117547</guid><dc:creator><![CDATA[silversurfer2025]]></dc:creator><pubDate>Tue, 15 Aug 2006 12:29:52 GMT</pubDate></item><item><title><![CDATA[Reply to klasse wird nicht gefunden - ich bin ratlos! on Tue, 15 Aug 2006 12:41:11 GMT]]></title><description><![CDATA[<p>Denke schon, dass das sein könnte.</p>
<p>Probiers doch einfach aus und mach ne Vorwärtsdeklaration.</p>
<p>MfG</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1117562</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1117562</guid><dc:creator><![CDATA[Vorwärtsdeklaration]]></dc:creator><pubDate>Tue, 15 Aug 2006 12:41:11 GMT</pubDate></item><item><title><![CDATA[Reply to klasse wird nicht gefunden - ich bin ratlos! on Tue, 15 Aug 2006 13:03:29 GMT]]></title><description><![CDATA[<p>also a la</p>
<p>class FrameWork;</p>
<p>in allen klassen die diese Klasse nutzen? Sollte das nciht auch ohne gehen?<br />
Was genau macht eigentlich so eine Vorwaertsdeklaration?</p>
<p>Gruesse und Danke<br />
Tim</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1117582</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1117582</guid><dc:creator><![CDATA[silversurfer2025]]></dc:creator><pubDate>Tue, 15 Aug 2006 13:03:29 GMT</pubDate></item><item><title><![CDATA[Reply to klasse wird nicht gefunden - ich bin ratlos! on Tue, 15 Aug 2006 13:12:54 GMT]]></title><description><![CDATA[<p>Es macht möglich dass Framework auf ModelContainer und ModelContainer auf Framework verweisen kann, und es sollte in beide Richtungen nicht ohne gehen. ifdef schützt Dich nur vor rekursiver Textersetzung (Endlosschleife beim Includen), es macht nicht dass der Compiler &quot;rückwärts&quot; compiliert.</p>
<p>Eines von beiden wird nunmal zuerst includiert, und da kann der Compiler ohne Forward nicht wissen was danach noch kommt.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1117593</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1117593</guid><dc:creator><![CDATA[LordJaxom]]></dc:creator><pubDate>Tue, 15 Aug 2006 13:12:54 GMT</pubDate></item><item><title><![CDATA[Reply to klasse wird nicht gefunden - ich bin ratlos! on Tue, 15 Aug 2006 13:39:58 GMT]]></title><description><![CDATA[<p>aah... danke!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1117622</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1117622</guid><dc:creator><![CDATA[silversurfer2025]]></dc:creator><pubDate>Tue, 15 Aug 2006 13:39:58 GMT</pubDate></item><item><title><![CDATA[Reply to klasse wird nicht gefunden - ich bin ratlos! on Tue, 15 Aug 2006 15:41:24 GMT]]></title><description><![CDATA[<p>Hallo zusammen,<br />
leider habe ich mich zu frueh gefreut. Das mit der forward-declaration hat zwar die Probleme geloest, die ich mit den kreis-includes hatte, aber die Klasse FrameWork_GUI findet FrameWork immernoch nicht.. Hier noch einmal die klassen:</p>
<p>FrameWork.h:</p>
<pre><code class="language-cpp">#ifndef _framework_
#define _framework_

#include &lt;string&gt;
#include &lt;map&gt;
#include &lt;iostream&gt;
#include &lt;fstream&gt;
#include &quot;FeatureVector.h&quot;
#include &quot;ModelContainer.h&quot;
#include &quot;FeatureExtraction.h&quot;
#include &quot;HebbConnections.h&quot;
#include &quot;ModelContainer.h&quot;
#include &quot;ImageHandler.h&quot;
#include &quot;./Fundamental/ConfigReader.h&quot;
#include &quot;./ImageProcessing/Formation/YUVImage.h&quot;
#include &quot;./Structures/TribotsException.h&quot;
#include &quot;iGRLVQ.h&quot;
#include &quot;PostProcessing.h&quot;

class FrameWork {
    public:
        void init();
        virtual void output(int type, std::string) = 0;

    private:
        HebbConnections* hebb;
        ModelContainer* models;
        ModelContainer* trainData;
        ModelContainer* testData;
        FeatureExtraction* extractor;

        ImageHandler* ih;
        FeatureVector* extracted;
        YUVImage* currentImage;
        iGRLVQ* learner;

        std::map&lt;int, std::string&gt; indexImageMap;
};

#endif /*_FrameWork_*/
</code></pre>
<p>FrameWork.cpp:</p>
<pre><code>#include &quot;FrameWork.h&quot;

void FrameWork::init() {
    extractor = new FeatureExtraction(this);
    hebb = new HebbConnections(this);
    models = new ModelContainer(this);
    trainData = new ModelContainer(this);
    testData = new ModelContainer(this);
    ih = new ImageHandler(this);
    learner = new iGRLVQ(this,models,NULL);
}
C/C++ Code:
#include &quot;FrameWork.h&quot;

void FrameWork::init() {
extractor = new FeatureExtraction(this);
hebb = new HebbConnections(this);
models = new ModelContainer(this);
trainData = new ModelContainer(this);
testData = new ModelContainer(this);
ih = new ImageHandler(this);
learner = new iGRLVQ(this,models,NULL);
}
</code></pre>
<p>und hier nun die FrameWork_GUI.h</p>
<pre><code class="language-cpp">#ifndef _framework_gui_
#define _framework_gui_

#include &lt;iostream&gt;
#include &quot;FrameWork.h&quot;

class FrameWork_GUI : public FrameWork {
    void output(int type, std::string);
};

#endif /*_FrameWork_GUI_*/
</code></pre>
<p>und die .cpp von FrameWork_GUI (stark vereinfacht):</p>
<pre><code class="language-cpp">#include &quot;FrameWork_GUI.h&quot;

void FrameWork_GUI::output(int type, std::string str) {
    std::cout &lt;&lt; &quot;test&quot;;
}
C/C++ Code:
#include &quot;FrameWork_GUI.h&quot;

void FrameWork_GUI::output(int type, std::string str) {
std::cout &lt;&lt; &quot;test&quot;;
}
C/C++ Code:
#include &quot;FrameWork_GUI.h&quot;

void FrameWork_GUI::output(int type, std::string str) {
    std::cout &lt;&lt; &quot;test&quot;;
}
</code></pre>
<p>Der CompilerFehler ist immernoch</p>
<pre><code>FrameWork_GUI.h:12: error: expected class-name before ‘{’ token
</code></pre>
<p>Vielen Dank fuer eure Muehen<br />
Tim</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1117691</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1117691</guid><dc:creator><![CDATA[silversurfer2025]]></dc:creator><pubDate>Tue, 15 Aug 2006 15:41:24 GMT</pubDate></item><item><title><![CDATA[Reply to klasse wird nicht gefunden - ich bin ratlos! on Tue, 15 Aug 2006 15:43:02 GMT]]></title><description><![CDATA[<p>ok, da habe ich mich wohl stellenweise vercopy-und-pastet... sorry dass es nun etwas unuebersichtlicher ist..</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1117693</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1117693</guid><dc:creator><![CDATA[silversurfer2025]]></dc:creator><pubDate>Tue, 15 Aug 2006 15:43:02 GMT</pubDate></item><item><title><![CDATA[Reply to klasse wird nicht gefunden - ich bin ratlos! on Tue, 15 Aug 2006 17:03:28 GMT]]></title><description><![CDATA[<p>OK, habe den Fehler gefunden, es war ein anderer include der im kreis gelaufen ist...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1117744</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1117744</guid><dc:creator><![CDATA[silversurfer2025]]></dc:creator><pubDate>Tue, 15 Aug 2006 17:03:28 GMT</pubDate></item></channel></rss>