<?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[Listenelement ansteuern]]></title><description><![CDATA[<pre><code class="language-cpp">void name::display(unsigned long k)
{
	if(pel==0)
	{
		cout &lt;&lt; &quot;keine Liste vorhanden&quot; &lt;&lt; endl;
	}

	// wenn Liste existiert
	else
	{
		int anz=0;
		el* aktuell = pel;	//this-&gt;pel;

		// Eintrag k bzw. Ende der Liste suchen
		while ( aktuell!=0 ) 
		{
			anz++;
			aktuell=aktuell-&gt;pe;
		}

		// test ob k &lt; der gesamten Anzahl an Einträgen ist
		if(k&lt;anz)
		{
			cout &lt;&lt; &quot;Ausgabe des &quot; &lt;&lt; k &lt;&lt; &quot;-ten Elements: &quot; &lt;&lt; aktuell-&gt;pe &lt;&lt; endl;
		}									
		else
		{
			cout &lt;&lt; &quot;Index-Eintrag nicht vorhanden&quot; &lt;&lt; endl;
		}	
	}
}

void main()
{
	name *p1 = new name();

	p1-&gt;display();
}
</code></pre>
<p>Wo liegt der Fehler ?<br />
Ich bekomme eine Fehlermeldung, dass display keine 0 Argumente akzeptiert.<br />
Dummerweise muss die main so bleiben mit display() OHNE Argumente.<br />
D.h. display(1) ist falsch. Wie kann ich die Methode display anpassen ?<br />
display soll einen bestimmten Eintrag in der Liste anzeigen zB. den 7.ten</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/202934/listenelement-ansteuern</link><generator>RSS for Node</generator><lastBuildDate>Wed, 07 Oct 2026 08:04:28 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/202934.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 16 Jan 2008 21:29:59 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Listenelement ansteuern on Wed, 16 Jan 2008 21:31:06 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">void name::display(unsigned long k)
{
	if(pel==0)
	{
		cout &lt;&lt; &quot;keine Liste vorhanden&quot; &lt;&lt; endl;
	}

	// wenn Liste existiert
	else
	{
		int anz=0;
		el* aktuell = pel;	//this-&gt;pel;

		// Eintrag k bzw. Ende der Liste suchen
		while ( aktuell!=0 ) 
		{
			anz++;
			aktuell=aktuell-&gt;pe;
		}

		// test ob k &lt; der gesamten Anzahl an Einträgen ist
		if(k&lt;anz)
		{
			cout &lt;&lt; &quot;Ausgabe des &quot; &lt;&lt; k &lt;&lt; &quot;-ten Elements: &quot; &lt;&lt; aktuell-&gt;pe &lt;&lt; endl;
		}									
		else
		{
			cout &lt;&lt; &quot;Index-Eintrag nicht vorhanden&quot; &lt;&lt; endl;
		}	
	}
}

void main()
{
	name *p1 = new name();

	p1-&gt;display();
}
</code></pre>
<p>Wo liegt der Fehler ?<br />
Ich bekomme eine Fehlermeldung, dass display keine 0 Argumente akzeptiert.<br />
Dummerweise muss die main so bleiben mit display() OHNE Argumente.<br />
D.h. display(1) ist falsch. Wie kann ich die Methode display anpassen ?<br />
display soll einen bestimmten Eintrag in der Liste anzeigen zB. den 7.ten</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1438029</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1438029</guid><dc:creator><![CDATA[Ray-Kay]]></dc:creator><pubDate>Wed, 16 Jan 2008 21:31:06 GMT</pubDate></item><item><title><![CDATA[Reply to Listenelement ansteuern on Wed, 16 Jan 2008 21:42:11 GMT]]></title><description><![CDATA[<p>Der Fehler sollte offensichtlich sein, wenn Du die Fehlermeldung nochmal liest. Deine Funktion 'display' erwartet nunmal einen Parameter. Wenn Du die 'main'-Methode nicht ändern kannst, musst Du wohl 'display' ändern und entweder den Parameter entfernen oder ihm einen sinnvollen Standardwert geben.</p>
<p>Der Code wird aber dann in *jedem* Fall crashen, weil Du durch den Code garantierst, dass auf ein Null-Element zugegriffen wird.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1438034</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1438034</guid><dc:creator><![CDATA[Konrad Rudolph]]></dc:creator><pubDate>Wed, 16 Jan 2008 21:42:11 GMT</pubDate></item><item><title><![CDATA[Reply to Listenelement ansteuern on Wed, 16 Jan 2008 21:48:46 GMT]]></title><description><![CDATA[<p>Ray-Kay schrieb:</p>
<blockquote>
<p>Wo liegt der Fehler ?<br />
Ich bekomme eine Fehlermeldung, dass display keine 0 Argumente akzeptiert.<br />
Dummerweise muss die main so bleiben mit display() OHNE Argumente.</p>
</blockquote>
<p>Wenn eine Methode Parameter erfordert gibt es auch kein Weg daran vorbei.</p>
<p>Ray-Kay schrieb:</p>
<blockquote>
<p>D.h. display(1) ist falsch. Wie kann ich die Methode display anpassen ? display soll einen bestimmten Eintrag in der Liste anzeigen zB. den 7.ten</p>
</blockquote>
<p>Und wie soll display wissen welcher Eintrag angezeigt werden soll? Hellsehen kann die Funktion auch nicht.</p>
<p>Ich würde dir zwar gerne mit meiner Glaskugel.dll aushelfen, aber die ist leider bei wilden Spekulationen in einem Logikwölkchen verschwunden <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>cu André</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1438038</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1438038</guid><dc:creator><![CDATA[asc]]></dc:creator><pubDate>Wed, 16 Jan 2008 21:48:46 GMT</pubDate></item><item><title><![CDATA[Reply to Listenelement ansteuern on Thu, 17 Jan 2008 08:08:56 GMT]]></title><description><![CDATA[<p>Das war ja genau meine Frage, die Methode verlangt die Übergabe eines Parameters. In der main wird aber nichts übergeben, das hab' ich schon erkannt.<br />
Nun ist die Frage, ob man in diesem Fall einen default-Parameter angeben kann, der bewirkt das eine Fehlermeldung ausgegeben wird (zB. dass kein Parameter übergeben wurde). Denn sowohl die main() als auch display(unsigned long k) soll lt. Aufgabe so bleiben. Oder geht das überhaupt nicht und da ist ein Fehler in der Aufgabenstellung.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1438160</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1438160</guid><dc:creator><![CDATA[Ray-Kay]]></dc:creator><pubDate>Thu, 17 Jan 2008 08:08:56 GMT</pubDate></item><item><title><![CDATA[Reply to Listenelement ansteuern on Thu, 17 Jan 2008 08:22:09 GMT]]></title><description><![CDATA[<p>Ray-Kay schrieb:</p>
<blockquote>
<p>Oder geht das überhaupt nicht und da ist ein Fehler in der Aufgabenstellung.</p>
</blockquote>
<p>Da wird ein Fehler in der Aufgabenstellung sein.</p>
<p>Man kann zwar durchaus Standard-Parameter eingeben – aber erstens erscheint das hier wenig sinnvoll (Standardparameter sind *nicht* dafür da, um eine Fehlermeldung auszugeben, dass der Parameter vergessen wurde, denn das übernimmt ja bereits der Compiler für Dich).</p>
<p>Und zweitens könnte man dann in der Funktion nicht unterscheiden, woher der Parameter kommt. Die Funktion denkt dann, dass sie einen ganz normalen Parameter übergeben bekommen hat.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1438169</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1438169</guid><dc:creator><![CDATA[Konrad Rudolph]]></dc:creator><pubDate>Thu, 17 Jan 2008 08:22:09 GMT</pubDate></item><item><title><![CDATA[Reply to Listenelement ansteuern on Thu, 17 Jan 2008 08:26:44 GMT]]></title><description><![CDATA[<p>Ray-Kay schrieb:</p>
<blockquote>
<p>...der bewirkt das eine Fehlermeldung ausgegeben wird (zB. dass kein Parameter übergeben wurde). ..</p>
</blockquote>
<p>Da bereits der Compiler feststellen kann (und es auch tut), wenn kein Parameter übergeben wurde, und er sogar eine Fehlermeldung ausgibt, bist Du schon fertig. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f44d.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--thumbs_up"
      title=":+1:"
      alt="👍"
    /></p>
<p>Ich denke, was Du möchtest, ist eine Überprüfung, ob der übergebene Parameter fachlich korrekt ist - und das ist nicht dasselbe wie &quot;... ob ein Parameter übergeben wurde....&quot;.<br />
Und dass dafür ein Parameter notwendig ist, sollte auch klar sein. Ohne Auto kannst Du auch nicht feststellen, ob es die richtige Farbe hat. <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>Gruß,</p>
<p>Simon2.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1438170</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1438170</guid><dc:creator><![CDATA[Simon2]]></dc:creator><pubDate>Thu, 17 Jan 2008 08:26:44 GMT</pubDate></item><item><title><![CDATA[Reply to Listenelement ansteuern on Thu, 17 Jan 2008 09:33:10 GMT]]></title><description><![CDATA[<p>Vielen Dank dafür. Jetzt brauch' ich mir wenigstens nicht mehr den Kopf zerbrechen, da die Aufgabenstellung nicht ganz korrekt zu sein scheint. Naja Professorensind auch nur Menschen <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title=":)"
      alt="🙂"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1438201</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1438201</guid><dc:creator><![CDATA[Ray-Kay]]></dc:creator><pubDate>Thu, 17 Jan 2008 09:33:10 GMT</pubDate></item><item><title><![CDATA[Reply to Listenelement ansteuern on Thu, 17 Jan 2008 11:01:23 GMT]]></title><description><![CDATA[<blockquote>
<p>Nun ist die Frage, ob man in diesem Fall einen default-Parameter angeben kann, der bewirkt das eine Fehlermeldung ausgegeben wird (zB. dass kein Parameter übergeben wurde). Denn sowohl die main() als auch display(unsigned long k) soll lt. Aufgabe so bleiben. Oder geht das überhaupt nicht und da ist ein Fehler in der Aufgabenstellung.</p>
</blockquote>
<pre><code class="language-cpp">void foo::bar(int i=4){

}
</code></pre>
<p>Default 4, wenn kein wert mitgeegben wurde..</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1438259</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1438259</guid><dc:creator><![CDATA[BorisDieKlinge]]></dc:creator><pubDate>Thu, 17 Jan 2008 11:01:23 GMT</pubDate></item><item><title><![CDATA[Reply to Listenelement ansteuern on Thu, 17 Jan 2008 11:35:49 GMT]]></title><description><![CDATA[<p>BorisDieKlinge schrieb:</p>
<blockquote>
<p>...<br />
Default 4, wenn kein wert mitgeegben wurde..</p>
</blockquote>
<p>Du verlagerst die Fehler auch gerne an Stellen die dafür eigentlich nicht gedacht sind, oder? Es ist sehr innovativ Fehler über default-Werte zu implementieren... Wie wäre es z.B. wenn der std::vector beim Indexzugriff mit der &quot;Magischen Zahl&quot; 12345 einen Fehler bringt.</p>
<p>Grundlegende Regeln:</p>
<ul>
<li>Vermeide jegliche magische Zahlen im Programmcode</li>
<li>Um eine sinnvolle Codetrennung einzuhalten sollten Aus-/Eingaben (auch von Fehlermeldungen) von der Logik getrennt sein. Dann klappt es auch später wenn man mal die GUI wechselt.</li>
<li>Funktionsaufrufe sollte verständlich bleiben, auch wenn der Bezeichner k aus dem Originalpost schon Strafe genug ist (verwendet anständige, sprechende Bezeichner), handelt es sich hierbei um einen Index. Also kann man in deinen Beispiel nicht auf Index 4 zugreifen. Wie Intuitiv.</li>
<li>Boris: Lies Bücher! Und vermeide bitte sehr zweifelhafte Antworten.</li>
</ul>
<p>cu André</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1438282</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1438282</guid><dc:creator><![CDATA[asc]]></dc:creator><pubDate>Thu, 17 Jan 2008 11:35:49 GMT</pubDate></item></channel></rss>