<?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[Struct Problem]]></title><description><![CDATA[<p>Hallo,<br />
ich habe folgendes Struct:</p>
<pre><code class="language-cpp">struct menue_kat1
	{
		menue_kat1()
		{ 
			id_1=-1;
			id_2=-1;
			id_4=-1;
			id_5=-1;
		}

		int id_1,id_2,id_4,id_5;
		CString title;

		vector&lt;menue_kat1*&gt; subs;
	};
</code></pre>
<p>Wenn ich nun mit Schleifen die Struktur durchlaufe, dann müsste ich prüfen, ob der vector-Zeiger &quot;subs&quot; definiert wurde. Wie geht das?</p>
<p>if(subs==NULL)<br />
break;</p>
<p>geht nicht.</p>
<p>Grüße,<br />
Michael</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/205371/struct-problem</link><generator>RSS for Node</generator><lastBuildDate>Fri, 09 Oct 2026 02:20:41 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/205371.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 13 Feb 2008 15:16:13 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Struct Problem on Wed, 13 Feb 2008 15:16:13 GMT]]></title><description><![CDATA[<p>Hallo,<br />
ich habe folgendes Struct:</p>
<pre><code class="language-cpp">struct menue_kat1
	{
		menue_kat1()
		{ 
			id_1=-1;
			id_2=-1;
			id_4=-1;
			id_5=-1;
		}

		int id_1,id_2,id_4,id_5;
		CString title;

		vector&lt;menue_kat1*&gt; subs;
	};
</code></pre>
<p>Wenn ich nun mit Schleifen die Struktur durchlaufe, dann müsste ich prüfen, ob der vector-Zeiger &quot;subs&quot; definiert wurde. Wie geht das?</p>
<p>if(subs==NULL)<br />
break;</p>
<p>geht nicht.</p>
<p>Grüße,<br />
Michael</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1455165</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1455165</guid><dc:creator><![CDATA[miha_]]></dc:creator><pubDate>Wed, 13 Feb 2008 15:16:13 GMT</pubDate></item><item><title><![CDATA[Reply to Struct Problem on Wed, 13 Feb 2008 15:24:46 GMT]]></title><description><![CDATA[<p>wie auch, das ist nen vector und kein pointer aufn vector ...<br />
, der vector ist also immer da (wenn vllt auch leer) sobald deine strcut erzuegt wurde</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1455172</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1455172</guid><dc:creator><![CDATA[nüx n+x]]></dc:creator><pubDate>Wed, 13 Feb 2008 15:24:46 GMT</pubDate></item><item><title><![CDATA[Reply to Struct Problem on Wed, 13 Feb 2008 15:25:42 GMT]]></title><description><![CDATA[<p>zuerst mal: &quot;Geht nicht&quot; ist eine ziemlich miserable Fehlermeldung deinerseits. Ich bin mir sicher dass der Compiler da ausfuehrlicher ist.</p>
<p>Dann: definiert wurde subs, nur ist das kein Zeiger auf einen vector, sondern ein vector von Zeigern. Deswegen schlaegt auch der Vergleich mit 0 fehl. Wie du das jetzt richtig angehst, wird dir so keiner sagen koennen, da du ja nicht gesagt hast was du damit erreichen willst.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1455173</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1455173</guid><dc:creator><![CDATA[pumuckl]]></dc:creator><pubDate>Wed, 13 Feb 2008 15:25:42 GMT</pubDate></item><item><title><![CDATA[Reply to Struct Problem on Wed, 13 Feb 2008 15:30:17 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">struct menue_kat1
{
    // id's
    int id_1;
    int id_2;
    int id_4;
    int id_5;

    // text
    std::wstring title;

    // sub-elements
    std::vector&lt;menue_kat1*&gt; childs;

    menue_kat1()
        : id_1(-1), id_2(-1), id_4(-1), id_5(-1)
    {}
};
</code></pre>
<p>...</p>
<pre><code class="language-cpp">menu_kat1 item;
if (item.childs.empty() == true) /* TODO: Do something! */
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1455178</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1455178</guid><dc:creator><![CDATA[*D*Evil]]></dc:creator><pubDate>Wed, 13 Feb 2008 15:30:17 GMT</pubDate></item><item><title><![CDATA[Reply to Struct Problem on Wed, 13 Feb 2008 18:45:18 GMT]]></title><description><![CDATA[<p>Hier mein Code:</p>
<pre><code class="language-cpp">for(int i=0;i&lt;vec__menue_kat1.size();i++)
					{
						// Prüfen, ob diese Kategorie die übergeordnete Kategorie dieses Datensatzes ist
						if(vec__menue_kat1[i].id_1 == _menue_kat1_dataset.id_2)
						{
							_menue_kat1 *tempSUB = new _menue_kat1;

							tempSUB-&gt;id_1 = _menue_kat1_dataset.id_1;
							tempSUB-&gt;id_2 = _menue_kat1_dataset.id_2;
							tempSUB-&gt;title = _menue_kat1_dataset.title;
							tempSUB-&gt;id_4 = _menue_kat1_dataset.id_4;
							tempSUB-&gt;id_5 = _menue_kat1_dataset.id_5;

							vec__menue_kat1[i].subs.push_back(tempSUB);
						}else
						{
							vector&lt;_menue_kat1*&gt; subsTMP, subsTMP2;
							subsTMP	= vec__menue_kat1[i].subs;

							while(true)
							{						
								for(int j=0;j&lt;subsTMP.size();j++)
								{
									// Prüfen, ob diese Kategorie die übergeordnete Kategorie dieses Datensatzes ist
									if(subsTMP[j]-&gt;id_1 == _menue_kat1_dataset.id_2)
									{
										_menue_kat1 *tempSUB = new _menue_kat1;

										tempSUB-&gt;id_1 = _menue_kat1_dataset.id_1;
										tempSUB-&gt;id_2 = _menue_kat1_dataset.id_2;
										tempSUB-&gt;title = _menue_kat1_dataset.title;
										tempSUB-&gt;id_4 = _menue_kat1_dataset.id_4;
										tempSUB-&gt;id_5 = _menue_kat1_dataset.id_5;

										subsTMP[j]-&gt;subs.push_back(tempSUB);
									}
								}

								if(subsTMP[j]-&gt;subs.empty()) break;
								else
								{
									subsTMP2 = subsTMP[j]-&gt;subs;
									subsTMP = subsTMP2;
								}
							}
						}
					}
</code></pre>
<p>Beim Ausführen sprint der Debugger zu:<br />
size_type size() const<br />
{return (_First == 0 ? 0 : _Last - _First); }</p>
<p>Was das Ganze soll:<br />
Es soll eine Menüstruktur abgebildet werden.</p>
<p>a<br />
-aa<br />
-aaa<br />
-aaaa<br />
-aab<br />
-aac<br />
-ab<br />
-ac<br />
b<br />
-ba<br />
-bc<br />
c<br />
-ca</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1455286</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1455286</guid><dc:creator><![CDATA[miha_]]></dc:creator><pubDate>Wed, 13 Feb 2008 18:45:18 GMT</pubDate></item><item><title><![CDATA[Reply to Struct Problem on Wed, 13 Feb 2008 19:12:41 GMT]]></title><description><![CDATA[<p>Hmm es wäre vllt sinnvoll deinen Variablen mal anständige Namen zu geben! (Wo man weiß, was hinter steckt!)</p>
<p>Was genau soll was machen?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1455307</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1455307</guid><dc:creator><![CDATA[*D*Evil]]></dc:creator><pubDate>Wed, 13 Feb 2008 19:12:41 GMT</pubDate></item><item><title><![CDATA[Reply to Struct Problem on Thu, 14 Feb 2008 12:39:10 GMT]]></title><description><![CDATA[<p>Habe das Problem gelöst. Es hat sicher wieder gezeigt, dass man erst nachdenken sollte, bevor man anfängt zu programmieren.</p>
<p>Ich habe es jetzt über Rekursion gelöst.</p>
<p>Grüße,<br />
Michael</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1455801</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1455801</guid><dc:creator><![CDATA[miha_]]></dc:creator><pubDate>Thu, 14 Feb 2008 12:39:10 GMT</pubDate></item></channel></rss>