<?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[Zeiger auf eigene Klasse, es passiert nichts ...]]></title><description><![CDATA[<pre><code class="language-cpp">// ClassStudent.cpp
#include &lt;string&gt;
#include &lt;iostream&gt;
#include &lt;sstream&gt;
using namespace std;

class Student
{  
private:
	// TODO: attributes
	string familyName;
	string firstName;
	string domicile;
	string street;
public:
	// TODO: signatures for constructor, read and toString
	Student();
	Student(string, string, string, string);
	void read();
	string toString();
};
Student::Student(){
	familyName = &quot;&quot;;
	firstName = &quot;&quot;;
	domicile = &quot;&quot;;
	street = &quot;&quot;;
}
Student::Student(string famN, string firstN, string dom, string str)
{
	// TODO: complete constructor
	familyName = famN;
	firstName = firstN;
	domicile = dom;
	street = str;
}
void Student::read()   
{   
	// TODO: input from console
	cout &lt;&lt; &quot;Familienname:&quot; &lt;&lt;endl;
	getline(cin, familyName);
	cout &lt;&lt; &quot;Vorname:&quot; &lt;&lt;endl;
	getline(cin, firstName);
	cout &lt;&lt; &quot;Ort und Postleitzahl&quot; &lt;&lt;endl;
	getline(cin, domicile);
	cout &lt;&lt; &quot;Strasse und Hausnummer&quot; &lt;&lt;endl;
	getline(cin, street);
	system(&quot;cls&quot;);
} 
string Student::toString() 
{      
	// put all attributes in a &quot;nice&quot; string
	stringstream ss;     // stream from  sstream.h
	ss &lt;&lt; endl &lt;&lt; &quot;____________ Person___________&quot; &lt;&lt; endl
		&lt;&lt; firstName &lt;&lt; endl
		&lt;&lt; familyName &lt;&lt; endl
		&lt;&lt; domicile &lt;&lt; endl 	
		&lt;&lt; street &lt;&lt; endl
		&lt;&lt; &quot;______________________________&quot; &lt;&lt; endl;      
	return ss.str();    // convert stream ss into a string
}
int main()
{  
	// TODO: test class Student
	//Student ich;
	//ich.read();
	//cout &lt;&lt; ich.toString();

	//Student du;
	//du.read();
	//cout &lt;&lt; du.toString();
	//cout &lt;&lt; ich.toString();

	Student *studentpointer = new Student;
	studentpointer-&gt;read();
	studentpointer-&gt;toString();
	delete studentpointer;

	cout&lt;&lt; endl &lt;&lt; endl;
	system(&quot;PAUSE&quot;); 
	return 0;
}
</code></pre>
<p>Vorab, ja es ist eine Hausaufgabe. Wir sollten die Klasse Student erstellen mit ein paar Funktionen und natürlich Operator und danach noch einen Student &quot;dynamisch&quot; erstellen.</p>
<p>Nun ja ich hab das jetzt so verstanden, dass man einfach einen Zeiger auf nen neuen Studenten anlegen sollten, dies Funktioniert aber nicht, bzw. nach dem read() gibt der zeiger nichts mehr aus ...</p>
<p>Habe ich irgendwo einen riesigen Bock geschossen ohne es zu bemerken ?<br />
Oder habe ich das mit dem dynamisch falsch verstanden ?</p>
<p>[Ps.: sry das ich den ganzen Code auf einmal reingeknallt hab]</p>
<p>Ich bin für jeden Hilfe dankbar, Oli</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/325876/zeiger-auf-eigene-klasse-es-passiert-nichts</link><generator>RSS for Node</generator><lastBuildDate>Sat, 11 Jul 2026 16:18:37 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/325876.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 22 May 2014 10:55:59 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Zeiger auf eigene Klasse, es passiert nichts ... on Thu, 22 May 2014 10:55:59 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">// ClassStudent.cpp
#include &lt;string&gt;
#include &lt;iostream&gt;
#include &lt;sstream&gt;
using namespace std;

class Student
{  
private:
	// TODO: attributes
	string familyName;
	string firstName;
	string domicile;
	string street;
public:
	// TODO: signatures for constructor, read and toString
	Student();
	Student(string, string, string, string);
	void read();
	string toString();
};
Student::Student(){
	familyName = &quot;&quot;;
	firstName = &quot;&quot;;
	domicile = &quot;&quot;;
	street = &quot;&quot;;
}
Student::Student(string famN, string firstN, string dom, string str)
{
	// TODO: complete constructor
	familyName = famN;
	firstName = firstN;
	domicile = dom;
	street = str;
}
void Student::read()   
{   
	// TODO: input from console
	cout &lt;&lt; &quot;Familienname:&quot; &lt;&lt;endl;
	getline(cin, familyName);
	cout &lt;&lt; &quot;Vorname:&quot; &lt;&lt;endl;
	getline(cin, firstName);
	cout &lt;&lt; &quot;Ort und Postleitzahl&quot; &lt;&lt;endl;
	getline(cin, domicile);
	cout &lt;&lt; &quot;Strasse und Hausnummer&quot; &lt;&lt;endl;
	getline(cin, street);
	system(&quot;cls&quot;);
} 
string Student::toString() 
{      
	// put all attributes in a &quot;nice&quot; string
	stringstream ss;     // stream from  sstream.h
	ss &lt;&lt; endl &lt;&lt; &quot;____________ Person___________&quot; &lt;&lt; endl
		&lt;&lt; firstName &lt;&lt; endl
		&lt;&lt; familyName &lt;&lt; endl
		&lt;&lt; domicile &lt;&lt; endl 	
		&lt;&lt; street &lt;&lt; endl
		&lt;&lt; &quot;______________________________&quot; &lt;&lt; endl;      
	return ss.str();    // convert stream ss into a string
}
int main()
{  
	// TODO: test class Student
	//Student ich;
	//ich.read();
	//cout &lt;&lt; ich.toString();

	//Student du;
	//du.read();
	//cout &lt;&lt; du.toString();
	//cout &lt;&lt; ich.toString();

	Student *studentpointer = new Student;
	studentpointer-&gt;read();
	studentpointer-&gt;toString();
	delete studentpointer;

	cout&lt;&lt; endl &lt;&lt; endl;
	system(&quot;PAUSE&quot;); 
	return 0;
}
</code></pre>
<p>Vorab, ja es ist eine Hausaufgabe. Wir sollten die Klasse Student erstellen mit ein paar Funktionen und natürlich Operator und danach noch einen Student &quot;dynamisch&quot; erstellen.</p>
<p>Nun ja ich hab das jetzt so verstanden, dass man einfach einen Zeiger auf nen neuen Studenten anlegen sollten, dies Funktioniert aber nicht, bzw. nach dem read() gibt der zeiger nichts mehr aus ...</p>
<p>Habe ich irgendwo einen riesigen Bock geschossen ohne es zu bemerken ?<br />
Oder habe ich das mit dem dynamisch falsch verstanden ?</p>
<p>[Ps.: sry das ich den ganzen Code auf einmal reingeknallt hab]</p>
<p>Ich bin für jeden Hilfe dankbar, Oli</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2400287</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2400287</guid><dc:creator><![CDATA[_ _]]></dc:creator><pubDate>Thu, 22 May 2014 10:55:59 GMT</pubDate></item><item><title><![CDATA[Reply to Zeiger auf eigene Klasse, es passiert nichts ... on Thu, 22 May 2014 11:03:14 GMT]]></title><description><![CDATA[<p>_ _ schrieb:</p>
<blockquote>
<p>Nun ja ich hab das jetzt so verstanden, dass man einfach einen Zeiger auf nen neuen Studenten anlegen sollten, dies Funktioniert aber nicht, bzw. nach dem read() gibt der zeiger nichts mehr aus ...</p>
</blockquote>
<p>Ein Zeiger kann auch nichts ausgeben. Das Programm gibt danach noch einen Zeilenumbruch aus (über endl). Ansonsten steht da keine Ausgabeanweisung. Vielleicht wolltest du das Ergebnis von studentpointer-&gt;toString ausgeben, statt es zu verwerfen?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2400288</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2400288</guid><dc:creator><![CDATA[Bashar]]></dc:creator><pubDate>Thu, 22 May 2014 11:03:14 GMT</pubDate></item><item><title><![CDATA[Reply to Zeiger auf eigene Klasse, es passiert nichts ... on Thu, 22 May 2014 11:06:59 GMT]]></title><description><![CDATA[<blockquote>
<p>Nun ja ich hab das jetzt so verstanden, dass man einfach einen Zeiger auf nen neuen Studenten anlegen sollten, dies Funktioniert aber nicht, bzw. nach dem read() gibt der zeiger nichts mehr aus ...</p>
</blockquote>
<p>Was meinst du, es gibt nichts aus? Du schreibst die Daten in einen Stringstream. <code>toString</code> gibt den resultierenden String zurueck, aber du gibst ihn nicht aus. Einen Funktionsaufruf dieser Art nennt man eine <em>discarded value expression</em>.</p>
<p>Wolltest du eher</p>
<pre><code>std::cout &lt;&lt; studentpointer-&gt;toString();
</code></pre>
<p>?</p>
<p>~Edit: Zu spaet, meh.~</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2400289</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2400289</guid><dc:creator><![CDATA[Columbo]]></dc:creator><pubDate>Thu, 22 May 2014 11:06:59 GMT</pubDate></item><item><title><![CDATA[Reply to Zeiger auf eigene Klasse, es passiert nichts ... on Thu, 22 May 2014 11:16:54 GMT]]></title><description><![CDATA[<p>Bashar schrieb:</p>
<blockquote>
<p>_ _ schrieb:</p>
<blockquote>
<p>Nun ja ich hab das jetzt so verstanden, dass man einfach einen Zeiger auf nen neuen Studenten anlegen sollten, dies Funktioniert aber nicht, bzw. nach dem read() gibt der zeiger nichts mehr aus ...</p>
</blockquote>
<p>Ein Zeiger kann auch nichts ausgeben. Das Programm gibt danach noch einen Zeilenumbruch aus (über endl). Ansonsten steht da keine Ausgabeanweisung. Vielleicht wolltest du das Ergebnis von studentpointer-&gt;toString ausgeben, statt es zu verwerfen?</p>
</blockquote>
<p>Ouh ja genau das wars, Eiskalt das Ausgeben vergessen und ich Depp sitz da jetzt eine halbe Stunde davor und raffs einfach nicht, vielen Dank !</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2400292</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2400292</guid><dc:creator><![CDATA[_ _]]></dc:creator><pubDate>Thu, 22 May 2014 11:16:54 GMT</pubDate></item></channel></rss>