<?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[Zugriff auf Basisklasse in dynamischer Unterklasse]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich habe folgendes Problem, zu dem ich über die Suchfunktion leider nichts gefunden habe:</p>
<p>Ich möchte in einer Klasse Linienrichtung auf Elemente der Basisklasse Linie zugreifen. Beide Klassen werden dynamisch erstellt:</p>
<p>Datei Linie.h:<br />
Hallo,</p>
<p>ich habe folgendes Problem, zu dem ich über die Suchfunktion leider nichts gefunden habe:</p>
<p>Ich möchte in einer Klasse Linienrichtung auf Elemente der Basisklasse Linie zugreifen. Beide Klassen werden dynamisch erstellt:</p>
<p>Datei Linie.h:</p>
<pre><code class="language-cpp">class Linie
{
public:
	const int val_liniennr;

	Linienrichtung* richtung_fw;
	Linienrichtung* richtung_bw;

	Linie(const int tmp_liniennr) 
		: val_liniennr(tmp_liniennr) {
	}
};
</code></pre>
<p>Datei Linienrichtung.h:</p>
<pre><code class="language-cpp">class Linienrichtung : public Linie
{
public:
	const string val_name;
	const string val_hauptziel;

	Linienrichtung(const string tmp_name, const string tmp_hauptziel) 
		: val_name(tmp_name), 
		val_hauptziel(tmp_hauptziel) {
	}
};
</code></pre>
<p>Ich möchte in Linienrichtung.h auf das Element &quot;val_liniennr&quot; der zugehörigen Basisklasse &quot;Linie&quot; zugreifen.</p>
<p>Wenn ich nun kompiliere, erscheint jedoch in Linienrichtung.h die Meldung</p>
<blockquote>
<p>error C2504: 'Linie': Basisklasse undefiniert</p>
</blockquote>
<p>Beide Headerdateien sind jedoch in der Hauptdatei includiert, also</p>
<pre><code class="language-cpp">#include &quot;Linienrichtung.h&quot;
#include &quot;Linie.h&quot;
</code></pre>
<p>Wenn ich zusätzlich noch in Linienrichtung.h</p>
<pre><code class="language-cpp">#include &quot;Linie.h&quot;
</code></pre>
<p>einfüge, werden die Elemente der Unterklasse in Linie.h nicht mehr gefunden.</p>
<p>Hat jemand eine Idee, wo mein Fehler liegt? Oder gibt es gar keine Möglichkeit, bei dynamischen Klassen auf die Basisklasse zuzugreifen? Würde mich jedenfalls sehr über Antwort freuen!</p>
<p>Vielen Dank im Voraus!</p>
<p>Andy</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/165750/zugriff-auf-basisklasse-in-dynamischer-unterklasse</link><generator>RSS for Node</generator><lastBuildDate>Tue, 15 Sep 2026 00:45:37 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/165750.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 22 Nov 2006 16:48:59 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Zugriff auf Basisklasse in dynamischer Unterklasse on Wed, 22 Nov 2006 16:48:59 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich habe folgendes Problem, zu dem ich über die Suchfunktion leider nichts gefunden habe:</p>
<p>Ich möchte in einer Klasse Linienrichtung auf Elemente der Basisklasse Linie zugreifen. Beide Klassen werden dynamisch erstellt:</p>
<p>Datei Linie.h:<br />
Hallo,</p>
<p>ich habe folgendes Problem, zu dem ich über die Suchfunktion leider nichts gefunden habe:</p>
<p>Ich möchte in einer Klasse Linienrichtung auf Elemente der Basisklasse Linie zugreifen. Beide Klassen werden dynamisch erstellt:</p>
<p>Datei Linie.h:</p>
<pre><code class="language-cpp">class Linie
{
public:
	const int val_liniennr;

	Linienrichtung* richtung_fw;
	Linienrichtung* richtung_bw;

	Linie(const int tmp_liniennr) 
		: val_liniennr(tmp_liniennr) {
	}
};
</code></pre>
<p>Datei Linienrichtung.h:</p>
<pre><code class="language-cpp">class Linienrichtung : public Linie
{
public:
	const string val_name;
	const string val_hauptziel;

	Linienrichtung(const string tmp_name, const string tmp_hauptziel) 
		: val_name(tmp_name), 
		val_hauptziel(tmp_hauptziel) {
	}
};
</code></pre>
<p>Ich möchte in Linienrichtung.h auf das Element &quot;val_liniennr&quot; der zugehörigen Basisklasse &quot;Linie&quot; zugreifen.</p>
<p>Wenn ich nun kompiliere, erscheint jedoch in Linienrichtung.h die Meldung</p>
<blockquote>
<p>error C2504: 'Linie': Basisklasse undefiniert</p>
</blockquote>
<p>Beide Headerdateien sind jedoch in der Hauptdatei includiert, also</p>
<pre><code class="language-cpp">#include &quot;Linienrichtung.h&quot;
#include &quot;Linie.h&quot;
</code></pre>
<p>Wenn ich zusätzlich noch in Linienrichtung.h</p>
<pre><code class="language-cpp">#include &quot;Linie.h&quot;
</code></pre>
<p>einfüge, werden die Elemente der Unterklasse in Linie.h nicht mehr gefunden.</p>
<p>Hat jemand eine Idee, wo mein Fehler liegt? Oder gibt es gar keine Möglichkeit, bei dynamischen Klassen auf die Basisklasse zuzugreifen? Würde mich jedenfalls sehr über Antwort freuen!</p>
<p>Vielen Dank im Voraus!</p>
<p>Andy</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1179460</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1179460</guid><dc:creator><![CDATA[andysunshine]]></dc:creator><pubDate>Wed, 22 Nov 2006 16:48:59 GMT</pubDate></item><item><title><![CDATA[Reply to Zugriff auf Basisklasse in dynamischer Unterklasse on Wed, 22 Nov 2006 17:01:53 GMT]]></title><description><![CDATA[<p>[quote=&quot;andysunshine&quot;]</p>
<p>Datei Linie.h:</p>
<pre><code class="language-cpp">class Linienrichtung;

class Linie
{
public:
	const int val_liniennr;

	Linienrichtung* richtung_fw;
	Linienrichtung* richtung_bw;

	Linie(const int tmp_liniennr) 
		: val_liniennr(tmp_liniennr) {
	}
};
</code></pre>
<p>Datei Linienrichtung.h:</p>
<pre><code class="language-cpp">#include &quot;linie.h&quot;

class Linienrichtung : public Linie
{
public:
	const string val_name;
	const string val_hauptziel;

	Linienrichtung(const string tmp_name, const string tmp_hauptziel) 
		: val_name(tmp_name), 
		val_hauptziel(tmp_hauptziel) {
	}
};
</code></pre>
<p>Sollte es eigentlich tun...<br />
Aber vorsicht der C'tor von Linienrichtung ruft nicht deine Ctor-Linie(const int) auf sondern den Standard-C'tor.</p>
<p>Sollte dann so aussehen</p>
<pre><code class="language-cpp">Linienrichtung(const string tmp_name, const string tmp_hauptziel,const int tmp_liniennr) 
		: val_name(tmp_name), 
		val_hauptziel(tmp_hauptziel) : Linie(tmp_liniennr) {
	}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1179468</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1179468</guid><dc:creator><![CDATA[[[global:guest]]]]></dc:creator><pubDate>Wed, 22 Nov 2006 17:01:53 GMT</pubDate></item><item><title><![CDATA[Reply to Zugriff auf Basisklasse in dynamischer Unterklasse on Wed, 22 Nov 2006 17:54:47 GMT]]></title><description><![CDATA[<p>Vielen Dank, ich habe es in der vorgeschlagenen Form geändert. Nun kann ich jedoch nicht mehr von der Basisklasse auf die entsprechende Unterklasse zugreifen <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--disappointed_face"
      title=":("
      alt="😞"
    /></p>
<p>Ich habe nämlich in Linie.h folgende Funktion:</p>
<pre><code class="language-cpp">void Linie::show_linie(Linie* init_linie, string init_str_variantenart)
{
	init_linie-&gt;richtung_fw-&gt;show_linienrichtung(init_linie-&gt;richtung_fw, init_str_variantenart);
	init_linie-&gt;richtung_bw-&gt;show_linienrichtung(init_linie-&gt;richtung_bw, init_str_variantenart);
}
</code></pre>
<p>Nun wird nicht mehr erkannt, dass &quot;richtung_fw&quot; ein Element der Unterklasse &quot;Linienrichtung&quot; ist.<br />
Ich bekomme die Fehlermeldungen</p>
<blockquote>
<p>error C2027: Verwendung des undefinierten Typs &quot;Linienrichtung&quot;</p>
</blockquote>
<p>und</p>
<blockquote>
<p>error C2227: Der linke Teil von '-&gt;show_linienrichtung' muss auf Klasse/Struktur/Union zeigen</p>
</blockquote>
<p>Hast Du dafür noch eine Idee?</p>
<p>Vielen Dank!</p>
<p>Andy</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1179508</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1179508</guid><dc:creator><![CDATA[andysunshine]]></dc:creator><pubDate>Wed, 22 Nov 2006 17:54:47 GMT</pubDate></item><item><title><![CDATA[Reply to Zugriff auf Basisklasse in dynamischer Unterklasse on Wed, 22 Nov 2006 17:59:06 GMT]]></title><description><![CDATA[<p>Die Implementierung der Klassen in eigene cpp's und dann in linie.cpp #include &quot;linienrichtung.h&quot;.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1179510</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1179510</guid><dc:creator><![CDATA[[[global:guest]]]]></dc:creator><pubDate>Wed, 22 Nov 2006 17:59:06 GMT</pubDate></item><item><title><![CDATA[Reply to Zugriff auf Basisklasse in dynamischer Unterklasse on Wed, 22 Nov 2006 18:06:37 GMT]]></title><description><![CDATA[<p>Im großen und ganzen sollte das alles so aussehen:</p>
<p>linie.h</p>
<pre><code class="language-cpp">#ifndef __LINIE_
#define __LINIE_

class Linierichtung; //Forward-Deklaration

class Linie {
...
};

#endif
</code></pre>
<p>linienrichtung.h</p>
<pre><code class="language-cpp">#ifndef __LINIENRICHTUNG_
#define __LINIENRICHTUNG_

#include &quot;linie.h&quot;

class Linierichtung : public Linie {
...
};

#endif
</code></pre>
<p>linie.cpp</p>
<pre><code class="language-cpp">#include &quot;linie.h&quot;
#include &quot;linienrichtung.h&quot;

void Linie::show(...) { }
// blabalb der Rest auch
</code></pre>
<p>linienrichtung.cpp</p>
<pre><code class="language-cpp">#include &quot;linienrichtung.h&quot;

//blablabla
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1179513</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1179513</guid><dc:creator><![CDATA[[[global:guest]]]]></dc:creator><pubDate>Wed, 22 Nov 2006 18:06:37 GMT</pubDate></item><item><title><![CDATA[Reply to Zugriff auf Basisklasse in dynamischer Unterklasse on Wed, 22 Nov 2006 18:19:45 GMT]]></title><description><![CDATA[<p>Ich habe immer gedacht, dass __ (Doppel-Unterstrich) in den Includeguards böse ist. Sogar sehr böse. <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/1179524</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1179524</guid><dc:creator><![CDATA[sCIfI-&amp;gt;na]]></dc:creator><pubDate>Wed, 22 Nov 2006 18:19:45 GMT</pubDate></item><item><title><![CDATA[Reply to Zugriff auf Basisklasse in dynamischer Unterklasse on Wed, 22 Nov 2006 19:00:28 GMT]]></title><description><![CDATA[<p>Danke noch mal, aber jetzt bekomme ich auf einmal 116 Buildfehler angezeigt! <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--disappointed_face"
      title=":("
      alt="😞"
    /></p>
<p>Der erste Fehler tritt in Linienrichtung.cpp auf und besagt, dass die Elemente der Klasse Linienrichtung nicht gefunden werden.</p>
<p>Linienrichtung.cpp:</p>
<pre><code class="language-cpp">#include &quot;Linienrichtung.h&quot; 

void Linienrichtung::show_linienrichtung(Linienrichtung* init_linienrichtung, string init_str_variantenart) 
{
    cout &lt;&lt; &quot;  &quot; &lt;&lt; init_linienrichtung-&gt;val_name &lt;&lt; &quot; -&gt; Ri. &quot; &lt;&lt; init_linienrichtung-&gt;val_hauptziel &lt;&lt; endl;
    //...
}
</code></pre>
<p>&quot;val_name&quot; und &quot;val_hauptziel&quot; sollen hier angeblich keine Elemente von &quot;Linienrichtung&quot; sein, obwohl sie ja in Linienrichtung.h definiert sind...</p>
<p>Ich blicke hier wirklich nicht mehr durch <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>
<p>Noch eine Idee? <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>Grüße</p>
<p>Andy</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1179547</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1179547</guid><dc:creator><![CDATA[andysunshine]]></dc:creator><pubDate>Wed, 22 Nov 2006 19:00:28 GMT</pubDate></item><item><title><![CDATA[Reply to Zugriff auf Basisklasse in dynamischer Unterklasse on Wed, 22 Nov 2006 20:37:41 GMT]]></title><description><![CDATA[<p>Hmmm, ist überhaupt show_linienrichtung(...) in der Klasse deklariert ???</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1179599</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1179599</guid><dc:creator><![CDATA[[[global:guest]]]]></dc:creator><pubDate>Wed, 22 Nov 2006 20:37:41 GMT</pubDate></item><item><title><![CDATA[Reply to Zugriff auf Basisklasse in dynamischer Unterklasse on Wed, 22 Nov 2006 21:08:10 GMT]]></title><description><![CDATA[<p>Freak_Coder schrieb:</p>
<blockquote>
<p>Hmmm, ist überhaupt show_linienrichtung(...) in der Klasse deklariert ???</p>
</blockquote>
<p>Ja, ist es... Aber ich glaube, ich lasse es jetzt lieber so wie es war und speichere die Liniennummer der Basisklasse noch mal in der Unterklasse &quot;Linienrichtung&quot;. Ist dann zwar redundant, aber das Problem scheint wohl recht kompliziert zu sein <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>Trotzdem danke <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>Andy</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1179609</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1179609</guid><dc:creator><![CDATA[andysunshine]]></dc:creator><pubDate>Wed, 22 Nov 2006 21:08:10 GMT</pubDate></item><item><title><![CDATA[Reply to Zugriff auf Basisklasse in dynamischer Unterklasse on Thu, 23 Nov 2006 08:22:57 GMT]]></title><description><![CDATA[<p>Zeig doch mal etwas mehr Code (vor allem - wer includiert was und wo?) Denn eigentlich müsstest du imho Zugriff auf die Basiselemente haben.</p>
<p>Ansonsten solltest du mal über dein Design nachdenken - eine Linie hat/kennt zwei Richtungen - eine Richtung ist eine Linie -... irgendwo drehst du dich da im Kreis.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1179718</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1179718</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Thu, 23 Nov 2006 08:22:57 GMT</pubDate></item><item><title><![CDATA[Reply to Zugriff auf Basisklasse in dynamischer Unterklasse on Thu, 23 Nov 2006 09:17:48 GMT]]></title><description><![CDATA[<p>sCIfI-&gt;na schrieb:</p>
<blockquote>
<p>Ich habe immer gedacht, dass __ (Doppel-Unterstrich) in den Includeguards böse ist. Sogar sehr böse. <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>
</blockquote>
<p>Du hast recht. Es ist ein Fehler.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1179759</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1179759</guid><dc:creator><![CDATA[Ponto]]></dc:creator><pubDate>Thu, 23 Nov 2006 09:17:48 GMT</pubDate></item><item><title><![CDATA[Reply to Zugriff auf Basisklasse in dynamischer Unterklasse on Thu, 23 Nov 2006 11:15:33 GMT]]></title><description><![CDATA[<p>CStoll schrieb:</p>
<blockquote>
<p>Ansonsten solltest du mal über dein Design nachdenken - eine Linie hat/kennt zwei Richtungen - eine Richtung ist eine Linie -... irgendwo drehst du dich da im Kreis.</p>
</blockquote>
<p>Ja, das kommt mir auch so vor. Allerdings muss ich auch dazu sagen, dass dies mein erstes Projekt ist, in dem ich Klasseneigenschaften vererbe. Jedoch müsste es doch schon möglich sein, von einer Linie auf ihre beiden Fahrtrichtungen zuzugreifen und gleichzeitig auch von einer Fahrtrichtung auf ihre übergeordnete Linie?</p>
<p>Jedenfalls hier mein Code. &quot;Linienvariante&quot; ist eine Unterklasse zu &quot;Linienrichtung&quot;, &quot;Linienverlauf&quot; eine Unterklasse zu &quot;Linienvariante&quot;.</p>
<p>Hauptdatei (.cpp):</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;
#include &lt;iomanip&gt;
#include &lt;windows.h&gt;
#include &lt;sql.h&gt;
#include &lt;sqlext.h&gt;
#include &lt;string&gt;
#include &lt;vector&gt;
#include &lt;list&gt;
#include &lt;iostream&gt;
#include &lt;fstream&gt;
#include &lt;sstream&gt;
#include &lt;time.h&gt;

#include &quot;consts.h&quot;
#include &quot;mt-rand.h&quot;
#include &quot;Ort.h&quot;
#include &quot;Strecke.h&quot;
#include &quot;Linienverlauf.h&quot;
#include &quot;Linienvariante.h&quot;
#include &quot;Linienrichtung.h&quot;
#include &quot;Linie.h&quot;

//...

class Daten 
{
public:
	Daten();
	void main(void);
private:
	void set_verbindungsparameter(const string init_str_URI, const string init_str_user, const string init_str_passwort);
	void init(void);
	void get_orte(void);
	void get_strecken(void);
	void get_strecken_hp(void);
	void get_streckenfahrzeiten(void);
	void get_linien(void);
	Linienrichtung* get_linienrichtung(Linie* tmp_linie, string tmp_richtung);
	vector&lt;Linienvariante*&gt; get_linienvarianten(Linienrichtung* init_linienrichtung, string init_richtung);
	void get_linientakte(Linienvariante* init_linienvariante);
	Linienverlauf* get_linienverlauf(Linienvariante* init_linienvariante);

	void add_strecke_hp(const Strecke* strecke1, const Strecke* strecke2, const Strecke* strecke3);
	string ersetze_umlaut(string name, string umlaut);

	void show_orte(void);
	void show_strecken(vector&lt;Strecke*&gt;);
	void show_linien_alle(void);
	void show_linien_aktiv(void);
	void show_error(ostringstream &amp;oss, int prio);

	SQLRETURN lese_daten(string str_sql);

	//Verbindungsdaten für ODBC-Datenbank
	string str_URI;
	string str_user;
	string str_passwort;

	//ODBC-Verbidungshandles
	SQLHANDLE hEnvironment;
	SQLHANDLE hConnection;
	SQLHANDLE hStatement;

	Netzwerk MyNetzwerk;
	vector&lt;Linienverlauf*&gt; vec_linienverlaeufe;

	string str_pfad_errorlog;
	int anz_datenfehler;
};

//...

void Daten::get_linien(void)
{
	//...

	//hier wird eine Linie erstellt
	for (unsigned int i=0; i&lt;anz_datensaetze; i++) {
		Linie* akt_linie = new Linie(arr_linien[i].iLINIE_NR);
		MyNetzwerk.vec_linien.push_back(akt_linie);
	}
}
</code></pre>
<p>Linie.h</p>
<pre><code class="language-cpp">#ifndef _LINIE
	#define _LINIE

using namespace std;

class Linienrichtung;

class Linie
{
public:
	const int val_liniennr;
	int anz_varianten_aktiv;

	Linienrichtung* richtung_fw;
	Linienrichtung* richtung_bw;
	void show_linie(Linie* init_linie, string init_str_variantenart);

	Linie(const int tmp_liniennr) 
		: val_liniennr(tmp_liniennr) {
			anz_varianten_aktiv = 0;
	}
};

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

void Linie::show_linie(Linie* init_linie, string init_str_variantenart)
{
	cout &lt;&lt; &quot;Linie &quot; &lt;&lt; setw(2) &lt;&lt; init_linie-&gt;val_liniennr &lt;&lt; &quot;: &quot; &lt;&lt; endl;
	cout &lt;&lt; &quot;  &quot; &lt;&lt; init_linie-&gt;anz_varianten_aktiv &lt;&lt; &quot; aktive Varianten&quot; &lt;&lt; endl;
	init_linie-&gt;richtung_fw-&gt;show_linienrichtung(init_linie-&gt;richtung_fw, init_str_variantenart);
	init_linie-&gt;richtung_bw-&gt;show_linienrichtung(init_linie-&gt;richtung_bw, init_str_variantenart);
}
</code></pre>
<p>Linienrichtung.h:</p>
<pre><code class="language-cpp">#ifndef _LINIENRICHTUNG
	#define _LINIENRICHTUNG

#include &quot;Linie.h&quot;

using namespace std;

class Linienrichtung : public Linie
{
public:
	const string val_name;
	const string val_hauptziel;
	int anz_varianten;
	int anz_varianten_aktiv;
	vector&lt;Linienvariante*&gt; vec_linienvarianten;
	void show_linienrichtung(Linienrichtung* init_linienrichtung, string init_str_variantenart);

	Linienrichtung(const string tmp_name, const string tmp_hauptziel) 
		: val_name(tmp_name), 
		val_hauptziel(tmp_hauptziel) {
			anz_varianten = 0;
			anz_varianten_aktiv = 0;
	}

	Linienrichtung(const string tmp_name, const string tmp_hauptziel, const int tmp_liniennr)
		: val_name(tmp_name), 
		val_hauptziel(tmp_hauptziel) : Linie(tmp_liniennr) {
			anz_varianten = 0;
			anz_varianten_aktiv = 0;
	}
};

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

void Linienrichtung::show_linienrichtung(Linienrichtung* init_linienrichtung, string init_str_variantenart) 
{
    cout &lt;&lt; &quot;  &quot; &lt;&lt; init_linienrichtung-&gt;val_name &lt;&lt; &quot; -&gt; Ri. &quot; &lt;&lt; init_linienrichtung-&gt;val_hauptziel &lt;&lt; endl;
	cout &lt;&lt; &quot;    &quot; &lt;&lt; init_linienrichtung-&gt;anz_varianten_aktiv &lt;&lt; &quot; aktive &quot; &lt;&lt; init_linienrichtung-&gt;val_name &lt;&lt; &quot;-Varianten&quot; &lt;&lt; endl;
	for (int i=0; i&lt;init_linienrichtung-&gt;vec_linienvarianten.size(); i++) {
            //...
	}
}
</code></pre>
<p>Grüße</p>
<p>Andy</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1179875</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1179875</guid><dc:creator><![CDATA[andysunshine]]></dc:creator><pubDate>Thu, 23 Nov 2006 11:15:33 GMT</pubDate></item></channel></rss>