<?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[Grundsatzfrage: Header &#x2F; CPP]]></title><description><![CDATA[<p>Hallo und guten Morgen,</p>
<p>ich habe eine grundsätzliche Frage zum..ja wie nennt man das überhaupt??<br />
ableiten(?) einer bestehenden Klasse.</p>
<p>Ich habe einem Dialog eine Klasse mit dem Namen &quot;Haus&quot; zugeordnet.<br />
Haus ist vom Typ CDialog.</p>
<p>Nun muss ich CDialog aber durch CWasneues ersetzen.</p>
<p>Header vor Ableiten auf CWasneues:</p>
<pre><code class="language-cpp">#pragma once

// Haus-Dialogfeld

class Haus : public CDialog
{
	DECLARE_DYNAMIC(Haus)

public:
	Haus(CWnd* pParent = NULL);   // Standardkonstruktor
	virtual ~Haus();

// Dialogfelddaten
	enum { IDD = IDD_DIALOG1 };

protected:
	virtual void DoDataExchange(CDataExchange* pDX);    // DDX/DDV-Unterstützung

	DECLARE_MESSAGE_MAP()
};
</code></pre>
<p>Nun war mein Gedanke man tauscht wie folgt einfach CDialog gegen CWasneues aus:</p>
<pre><code class="language-cpp">#pragma once

// Haus-Dialogfeld

class Haus : public CWasneues
{
	DECLARE_DYNAMIC(Haus)

public:
	Haus(CWnd* pParent = NULL);   // Standardkonstruktor
	virtual ~Haus();

// Dialogfelddaten
	enum { IDD = IDD_DIALOG1 };

protected:
	virtual void DoDataExchange(CDataExchange* pDX);    // DDX/DDV-Unterstützung

	DECLARE_MESSAGE_MAP()
};
</code></pre>
<p>in der .cpp würde es vor der Änderung dann so aussehen:</p>
<pre><code class="language-cpp">// Haus.cpp : Implementierungsdatei
//

#include &quot;stdafx.h&quot;
#include &quot;Testanwendung.h&quot;
#include &quot;Haus.h&quot;

// Haus-Dialogfeld

IMPLEMENT_DYNAMIC(Haus, CDialog)
Haus::Haus(CWnd* pParent /*=NULL*/)
	: CDialog(Haus::IDD, pParent)
{
}

Haus::~Haus()
{
}

void Haus::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
}

BEGIN_MESSAGE_MAP(Haus, CDialog)
END_MESSAGE_MAP()

// Haus-Meldungshandler
</code></pre>
<p>Und wenn ich CWasneues statt CDialog einsetzen will dann so:</p>
<pre><code class="language-cpp">// Haus.cpp : Implementierungsdatei
//

#include &quot;stdafx.h&quot;
#include &quot;Testanwendung.h&quot;
#include &quot;Haus.h&quot;

// Haus-Dialogfeld

IMPLEMENT_DYNAMIC(Haus, CWasNeues)
Haus::Haus(CWnd* pParent /*=NULL*/)
	: CWasneues(Haus::IDD, pParent)
{
}

Haus::~Haus()
{
}

void Haus::DoDataExchange(CDataExchange* pDX)
{
	CWasneues::DoDataExchange(pDX);
}

BEGIN_MESSAGE_MAP(Haus, CWasneues)
END_MESSAGE_MAP()

// Haus-Meldungshandler
</code></pre>
<p>Ich erhalte nach dem Kompilieren jedoch folgende Meldung für &quot;haus.h&quot;:<br />
error C2504: 'CWasneues': Basisklasse undefiniert</p>
<p>Sowie haufenweise weitere Fehlermeldungen in diesem Zusammenhang.<br />
CWasneues ist dem Projekt als CWasneues.h/.cpp auch hinzugefügt worden.</p>
<p>Vielleicht kann jemand helfen. Evtl. finde ich ja auch schon vorab<br />
de Lösung in meinem Anfängerbuch zum Thema Klassen. Wobei ich glaube,<br />
dass dieser Fall oder was ähnliches da nicht behandelt wird. Mal sehen!</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/185922/grundsatzfrage-header-cpp</link><generator>RSS for Node</generator><lastBuildDate>Mon, 13 Apr 2026 14:00:56 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/185922.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 03 Jul 2007 06:21:10 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Grundsatzfrage: Header &#x2F; CPP on Tue, 03 Jul 2007 06:21:10 GMT]]></title><description><![CDATA[<p>Hallo und guten Morgen,</p>
<p>ich habe eine grundsätzliche Frage zum..ja wie nennt man das überhaupt??<br />
ableiten(?) einer bestehenden Klasse.</p>
<p>Ich habe einem Dialog eine Klasse mit dem Namen &quot;Haus&quot; zugeordnet.<br />
Haus ist vom Typ CDialog.</p>
<p>Nun muss ich CDialog aber durch CWasneues ersetzen.</p>
<p>Header vor Ableiten auf CWasneues:</p>
<pre><code class="language-cpp">#pragma once

// Haus-Dialogfeld

class Haus : public CDialog
{
	DECLARE_DYNAMIC(Haus)

public:
	Haus(CWnd* pParent = NULL);   // Standardkonstruktor
	virtual ~Haus();

// Dialogfelddaten
	enum { IDD = IDD_DIALOG1 };

protected:
	virtual void DoDataExchange(CDataExchange* pDX);    // DDX/DDV-Unterstützung

	DECLARE_MESSAGE_MAP()
};
</code></pre>
<p>Nun war mein Gedanke man tauscht wie folgt einfach CDialog gegen CWasneues aus:</p>
<pre><code class="language-cpp">#pragma once

// Haus-Dialogfeld

class Haus : public CWasneues
{
	DECLARE_DYNAMIC(Haus)

public:
	Haus(CWnd* pParent = NULL);   // Standardkonstruktor
	virtual ~Haus();

// Dialogfelddaten
	enum { IDD = IDD_DIALOG1 };

protected:
	virtual void DoDataExchange(CDataExchange* pDX);    // DDX/DDV-Unterstützung

	DECLARE_MESSAGE_MAP()
};
</code></pre>
<p>in der .cpp würde es vor der Änderung dann so aussehen:</p>
<pre><code class="language-cpp">// Haus.cpp : Implementierungsdatei
//

#include &quot;stdafx.h&quot;
#include &quot;Testanwendung.h&quot;
#include &quot;Haus.h&quot;

// Haus-Dialogfeld

IMPLEMENT_DYNAMIC(Haus, CDialog)
Haus::Haus(CWnd* pParent /*=NULL*/)
	: CDialog(Haus::IDD, pParent)
{
}

Haus::~Haus()
{
}

void Haus::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
}

BEGIN_MESSAGE_MAP(Haus, CDialog)
END_MESSAGE_MAP()

// Haus-Meldungshandler
</code></pre>
<p>Und wenn ich CWasneues statt CDialog einsetzen will dann so:</p>
<pre><code class="language-cpp">// Haus.cpp : Implementierungsdatei
//

#include &quot;stdafx.h&quot;
#include &quot;Testanwendung.h&quot;
#include &quot;Haus.h&quot;

// Haus-Dialogfeld

IMPLEMENT_DYNAMIC(Haus, CWasNeues)
Haus::Haus(CWnd* pParent /*=NULL*/)
	: CWasneues(Haus::IDD, pParent)
{
}

Haus::~Haus()
{
}

void Haus::DoDataExchange(CDataExchange* pDX)
{
	CWasneues::DoDataExchange(pDX);
}

BEGIN_MESSAGE_MAP(Haus, CWasneues)
END_MESSAGE_MAP()

// Haus-Meldungshandler
</code></pre>
<p>Ich erhalte nach dem Kompilieren jedoch folgende Meldung für &quot;haus.h&quot;:<br />
error C2504: 'CWasneues': Basisklasse undefiniert</p>
<p>Sowie haufenweise weitere Fehlermeldungen in diesem Zusammenhang.<br />
CWasneues ist dem Projekt als CWasneues.h/.cpp auch hinzugefügt worden.</p>
<p>Vielleicht kann jemand helfen. Evtl. finde ich ja auch schon vorab<br />
de Lösung in meinem Anfängerbuch zum Thema Klassen. Wobei ich glaube,<br />
dass dieser Fall oder was ähnliches da nicht behandelt wird. Mal sehen!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1317261</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1317261</guid><dc:creator><![CDATA[Kunibert]]></dc:creator><pubDate>Tue, 03 Jul 2007 06:21:10 GMT</pubDate></item><item><title><![CDATA[Reply to Grundsatzfrage: Header &#x2F; CPP on Tue, 03 Jul 2007 06:37:06 GMT]]></title><description><![CDATA[<p>Warum möchtest Du das?</p>
<p>Das würde nur gehen, wenn CWasneues auch von CDialog abgeleitet ist!<br />
Sicher muss aber dann auch Cwasneues in dieser Klasse Haus auch bekannt sein. D.h. die entsprechenden Header müssen hier eingefügt werden.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1317270</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1317270</guid><dc:creator><![CDATA[Martin Richter]]></dc:creator><pubDate>Tue, 03 Jul 2007 06:37:06 GMT</pubDate></item><item><title><![CDATA[Reply to Grundsatzfrage: Header &#x2F; CPP on Tue, 03 Jul 2007 08:44:33 GMT]]></title><description><![CDATA[<p>Es geht mir um das Sample hier <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/27a1.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--right_arrow"
      title=":arrow_right:"
      alt="➡"
    /><br />
<a href="http://www.codeproject.com/dialog/SlidingDialog.asp" rel="nofollow">http://www.codeproject.com/dialog/SlidingDialog.asp</a></p>
<p>Ich wollte das mal grundsätzlich verstehen was da gemacht wird,<br />
da zwar das Beispiel bei mir läuft, ich aber es selbst nicht anhand<br />
der dort beschriebenen Anleitung zum laufen bekomme.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1317323</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1317323</guid><dc:creator><![CDATA[Kunibert]]></dc:creator><pubDate>Tue, 03 Jul 2007 08:44:33 GMT</pubDate></item><item><title><![CDATA[Reply to Grundsatzfrage: Header &#x2F; CPP on Tue, 03 Jul 2007 08:47:00 GMT]]></title><description><![CDATA[<p>Du musst die Basisklasse überall ersetzen, wie Du es gemacht hast. Darfst aber eben nicht vergessen die Header der neuen Klasse einzufügen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1317325</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1317325</guid><dc:creator><![CDATA[Martin Richter]]></dc:creator><pubDate>Tue, 03 Jul 2007 08:47:00 GMT</pubDate></item><item><title><![CDATA[Reply to Grundsatzfrage: Header &#x2F; CPP on Tue, 03 Jul 2007 13:45:46 GMT]]></title><description><![CDATA[<p>Danke hat geklappt.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1317526</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1317526</guid><dc:creator><![CDATA[Kunibert]]></dc:creator><pubDate>Tue, 03 Jul 2007 13:45:46 GMT</pubDate></item></channel></rss>