<?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[template-Funktionen zum einlesen &#x2F; ausgeben von Feldern]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich soll 3 txt-Dateien in Felder einlesen und wieder ausgeben.</p>
<p>- ein double-Feld (double.txt)<br />
- ein string-Feld (strings.txt)<br />
- ein Student-Feld (studenten.txt)</p>
<p>Beispiel für Student-Typ: Carl-Friedrich Gauss 111111 1.0</p>
<pre><code>struct Student
{
    std::string Vorname, Nachname;
    int         MatNr;
    double      Note;
};
</code></pre>
<p>Ein- und Ausgabeoperatoren für diesen benutzerdef. Dateityp habe ich bereits<br />
implementiert.<br />
Es geht sich also nur um die template-Funktionen</p>
<pre><code>template&lt;typename ElemT&gt;
void einlesen( std::ifstream&amp; ifs, std::vector&lt;ElemT&gt;&amp; feld)
</code></pre>
<p>und</p>
<pre><code>template&lt;typename ElemT&gt;
void ausgeben( std::ostream&amp; os, const std::vector&lt;ElemT&gt;&amp; feld)
</code></pre>
<p>Bin noch absoluter C++-Anfänger und habe noch nicht mit templates gearbeitet,<br />
und auch das Ein-/Auslesen von Dateien bereitet mir Schwierigkeiten.</p>
<p>Ich will mit 'ifs.eof()' überprüfen ob das Ende der Datei erreicht ist (nach jedem Lesen?)<br />
Würde sich hier eine Schleife anbieten?<br />
Da die Anzahl der zu lesenden Dateien nicht feststeht, kann ich jede eingelesene<br />
Datei mit 'push_back' hinten an den Vektor feld hängen oder?<br />
Das sind meine Ideen zum Einlesen.</p>
<p>Im Voraus schon mal vielen Dank für eure Hilfe <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/topic/332553/template-funktionen-zum-einlesen-ausgeben-von-feldern</link><generator>RSS for Node</generator><lastBuildDate>Mon, 27 Apr 2026 20:40:57 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/332553.rss" rel="self" type="application/rss+xml"/><pubDate>Fri, 08 May 2015 03:08:47 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to template-Funktionen zum einlesen &#x2F; ausgeben von Feldern on Fri, 08 May 2015 03:08:47 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich soll 3 txt-Dateien in Felder einlesen und wieder ausgeben.</p>
<p>- ein double-Feld (double.txt)<br />
- ein string-Feld (strings.txt)<br />
- ein Student-Feld (studenten.txt)</p>
<p>Beispiel für Student-Typ: Carl-Friedrich Gauss 111111 1.0</p>
<pre><code>struct Student
{
    std::string Vorname, Nachname;
    int         MatNr;
    double      Note;
};
</code></pre>
<p>Ein- und Ausgabeoperatoren für diesen benutzerdef. Dateityp habe ich bereits<br />
implementiert.<br />
Es geht sich also nur um die template-Funktionen</p>
<pre><code>template&lt;typename ElemT&gt;
void einlesen( std::ifstream&amp; ifs, std::vector&lt;ElemT&gt;&amp; feld)
</code></pre>
<p>und</p>
<pre><code>template&lt;typename ElemT&gt;
void ausgeben( std::ostream&amp; os, const std::vector&lt;ElemT&gt;&amp; feld)
</code></pre>
<p>Bin noch absoluter C++-Anfänger und habe noch nicht mit templates gearbeitet,<br />
und auch das Ein-/Auslesen von Dateien bereitet mir Schwierigkeiten.</p>
<p>Ich will mit 'ifs.eof()' überprüfen ob das Ende der Datei erreicht ist (nach jedem Lesen?)<br />
Würde sich hier eine Schleife anbieten?<br />
Da die Anzahl der zu lesenden Dateien nicht feststeht, kann ich jede eingelesene<br />
Datei mit 'push_back' hinten an den Vektor feld hängen oder?<br />
Das sind meine Ideen zum Einlesen.</p>
<p>Im Voraus schon mal vielen Dank für eure Hilfe <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/2452935</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2452935</guid><dc:creator><![CDATA[danooh]]></dc:creator><pubDate>Fri, 08 May 2015 03:08:47 GMT</pubDate></item><item><title><![CDATA[Reply to template-Funktionen zum einlesen &#x2F; ausgeben von Feldern on Fri, 08 May 2015 04:28:29 GMT]]></title><description><![CDATA[<p>Wenn du nur den Teil mit dem Einlesen von doubles machen wolltest und die templates wegließest:</p>
<pre><code>void einlesen( std::ifstream&amp; ifs, std::vector&lt;double&gt;&amp; feld)
</code></pre>
<p>Wie würdest du es dann machen?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2452936</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2452936</guid><dc:creator><![CDATA[SeppJ]]></dc:creator><pubDate>Fri, 08 May 2015 04:28:29 GMT</pubDate></item><item><title><![CDATA[Reply to template-Funktionen zum einlesen &#x2F; ausgeben von Feldern on Sat, 09 May 2015 00:51:17 GMT]]></title><description><![CDATA[<p>Hab's heute fertiggestellt.<br />
Danke !!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2453052</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2453052</guid><dc:creator><![CDATA[danooh]]></dc:creator><pubDate>Sat, 09 May 2015 00:51:17 GMT</pubDate></item></channel></rss>