<?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 array funktion übergeben]]></title><description><![CDATA[<p>Ich würde gerne einen Struct Array eine Funktion geben. (Natürlich mit Referenz)<br />
Hier mein Code bisher:</p>
<p>main.cpp</p>
<pre><code>void create_user(data &amp;*user); //Hier ist &quot;Line 6&quot;

int main(){
    struct data{
        string username;
        string password;
    };

    data user[19];
    create_user(user, 19);

    cout &lt;&lt; user[0].username &lt;&lt; &quot;-------&quot; &lt;&lt; user[0].password;
    return 0;
}

void create_user(data &amp;*user){
    user[0].username=&quot;Horst&quot;;
    user[0].password=&quot;B4um&quot;;
}
</code></pre>
<p>Und ich bekomme die Fehler:<br />
<strong>Variable oder Feld &quot;create_user&quot; als &quot;void&quot; deklariert &lt;- Line6<br />
&quot;data&quot; wurde in diesem Gültigkeitsbereich nicht deklariert &amp; &quot;user&quot; auch nicht &lt;- Line6<br />
Und in der Funktion kennt er die &quot;struct-Elemte&quot; auch nicht.</strong></p>
<p>Bitte helft mir.</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/326186/struct-array-funktion-übergeben</link><generator>RSS for Node</generator><lastBuildDate>Sat, 11 Jul 2026 09:30:55 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/326186.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 05 Jun 2014 15:53:08 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to struct array funktion übergeben on Thu, 05 Jun 2014 15:53:08 GMT]]></title><description><![CDATA[<p>Ich würde gerne einen Struct Array eine Funktion geben. (Natürlich mit Referenz)<br />
Hier mein Code bisher:</p>
<p>main.cpp</p>
<pre><code>void create_user(data &amp;*user); //Hier ist &quot;Line 6&quot;

int main(){
    struct data{
        string username;
        string password;
    };

    data user[19];
    create_user(user, 19);

    cout &lt;&lt; user[0].username &lt;&lt; &quot;-------&quot; &lt;&lt; user[0].password;
    return 0;
}

void create_user(data &amp;*user){
    user[0].username=&quot;Horst&quot;;
    user[0].password=&quot;B4um&quot;;
}
</code></pre>
<p>Und ich bekomme die Fehler:<br />
<strong>Variable oder Feld &quot;create_user&quot; als &quot;void&quot; deklariert &lt;- Line6<br />
&quot;data&quot; wurde in diesem Gültigkeitsbereich nicht deklariert &amp; &quot;user&quot; auch nicht &lt;- Line6<br />
Und in der Funktion kennt er die &quot;struct-Elemte&quot; auch nicht.</strong></p>
<p>Bitte helft mir.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2402598</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2402598</guid><dc:creator><![CDATA[Fensterscheibe]]></dc:creator><pubDate>Thu, 05 Jun 2014 15:53:08 GMT</pubDate></item><item><title><![CDATA[Reply to struct array funktion übergeben on Thu, 05 Jun 2014 16:02:22 GMT]]></title><description><![CDATA[<pre><code>void create_user(data &amp;*user); //Hier ist &quot;Line 6&quot;
</code></pre>
<p>Du hast <code>data</code> zu diesem Zeitpunkt nicht deklariert. Daher beschwert sich der Compiler (zu Recht).</p>
<p>So sollte es aussehen:</p>
<pre><code>#include &lt;iostream&gt;
#include &lt;string&gt;
#include &lt;vector&gt;

struct data
{
	std::string username;
	std::string password;

	data( std::string const&amp; username,
	      std::string const&amp; password ) :
		username(username),
		password(password) {}
};

int main()
{
	std::vector&lt;data&gt; users;
	users.emplace_back( &quot;Horst&quot;, &quot;B4um&quot; );

	std::cout &lt;&lt; users.front().username &lt;&lt; &quot;-------&quot; &lt;&lt; users.front().password;
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2402604</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2402604</guid><dc:creator><![CDATA[Columbo]]></dc:creator><pubDate>Thu, 05 Jun 2014 16:02:22 GMT</pubDate></item><item><title><![CDATA[Reply to struct array funktion übergeben on Thu, 05 Jun 2014 16:03:46 GMT]]></title><description><![CDATA[<p>Abgesehen davon, dass du hier keine Referenz auf einen Zeiger brauchst, schreibt man das <code>data *&amp; user</code> . Was du geschrieben hast heißt &quot;Zeiger auf Referenz&quot;, und sowas gibt es nicht.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2402606</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2402606</guid><dc:creator><![CDATA[Bashar]]></dc:creator><pubDate>Thu, 05 Jun 2014 16:03:46 GMT</pubDate></item><item><title><![CDATA[Reply to struct array funktion übergeben on Thu, 05 Jun 2014 16:28:10 GMT]]></title><description><![CDATA[<p>Arcoth schrieb:</p>
<blockquote>
<pre><code>void create_user(data &amp;*user); //Hier ist &quot;Line 6&quot;
</code></pre>
<p>Du hast <code>data</code> zu diesem Zeitpunkt nicht deklariert. Daher beschwert sich der Compiler (zu Recht).</p>
<p>So sollte es aussehen:</p>
<pre><code>#include &lt;iostream&gt;
#include &lt;string&gt;
#include &lt;vector&gt;

struct data
{
	std::string username;
	std::string password;

	data( std::string const&amp; username, std::string const&amp; password ) :
		username(username),
		password(password) {} //Was genau passiert hier? Ist das eine eigene Funktion? Einmal erklären bitte :D
};

int main()
{
	std::vector&lt;data&gt; users;//Ich benutze immer den Array sollte ich den Vector benutzen? Und woher weiß ich welches &quot;Element&quot; ich nehmen soll?
	users.emplace_back( &quot;Horst&quot;, &quot;B4um&quot; );//Und hier einmal die &quot;Funktion&quot;? oder was soll das darstellen? 

	std::cout &lt;&lt; users.front().username &lt;&lt; &quot;-------&quot; &lt;&lt; users.front().password;//Was bedeutet &quot;front()&quot;?
}
</code></pre>
</blockquote>
<p>Danke! Meine Fragen stehen im Code. <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>
<p>Bashar schrieb:</p>
<blockquote>
<p>Abgesehen davon, dass du hier keine Referenz auf einen Zeiger brauchst, schreibt man das data *&amp; user. Was du geschrieben hast heißt &quot;Zeiger auf Referenz&quot;, und sowas gibt es nicht.</p>
</blockquote>
<p>Stimmt habe ich vergessen. Ein Zeiger schreibt ja direkt in die Speicherzelle.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2402610</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2402610</guid><dc:creator><![CDATA[Fensterscheibe]]></dc:creator><pubDate>Thu, 05 Jun 2014 16:28:10 GMT</pubDate></item><item><title><![CDATA[Reply to struct array funktion übergeben on Thu, 05 Jun 2014 16:58:18 GMT]]></title><description><![CDATA[<pre><code>data( std::string const&amp; username, std::string const&amp; password ) :
        username(username),
        password(password) {} //Was genau passiert hier? Ist das eine eigene Funktion? Einmal erklären bitte :D
</code></pre>
<p>Das ist ein Konstruktor.</p>
<p>Ein Konstruktor initialisiert die Basisklassen und Member eines Objektes und kann im Rumpf wie eine ganz normale Funktion noch andere Dinge erledigen. In diesem Fall initialisiert er die Member <code>username</code> und <code>password</code> mit den dazugehörigen Funktionsparametern (die den gleichen Namen tragen dürfen).</p>
<p>Und der Konstruktor ist in der Tat eine eigene Funktion, man nennt ihn eine spezielle Memberfunktion (engl. <em>special member function</em>).</p>
<blockquote>
<p>//Ich benutze immer den Array sollte ich den Vector benutzen?</p>
</blockquote>
<p>Ja. Wenn die Anzahl der Elemente im Voraus feststeht geht auch ein Array, aber dann müssen die Elemente in den meisten Fällen default-Konstruierbar sein - bei <code>vector</code> gilt das nicht. Die Größe eines <code>vector</code> s kannst du im Nachhinein ändern - und alle Elemente einzeln einfügen.</p>
<blockquote>
<p>//Und hier einmal die &quot;Funktion&quot;?</p>
</blockquote>
<p>Diese Funktion fügt ein Element in den Container ein. Sie ist auch bei anderen sequentiellen Containern wie<a href="http://en.cppreference.com/w/cpp/container/list" rel="nofollow"> <code>list</code> </a>oder<a href="http://en.cppreference.com/w/cpp/container/deque" rel="nofollow"> <code>deque</code> </a>vorhanden.</p>
<p>Im Gegensatz zu <code>push_back</code> , welches ein Objekt nimmt und eine Kopie* davon einfügt, nimmt <code>emplace_back</code> <strong>direkt</strong> die Konstruktorargumente entgegen.</p>
<blockquote>
<p>//Was bedeutet &quot;front()&quot;?</p>
</blockquote>
<p>Ist genau dasselbe wie <code>vec[0]</code> . Man kann es aber in generischem Code nutzen um vom Containertyp unabhängiger zu werden (und es ist hübscher und aussagekräftiger als <code>*begin()</code> ).</p>
<p>Bei <code>vector</code> kann man wie gewohnt mit dem Indexoperator arbeiten. Zusätzlich gibt es noch die Memberfunktion<a href="http://en.cppreference.com/w/cpp/container/vector/at" rel="nofollow"> <code>at</code> </a>, welches einen Range-Check durchführt (und eine <a href="http://en.cppreference.com/w/cpp/error/out_of_range" rel="nofollow">Exception</a> schmeißt falls der Index ungültig ist).</p>
<p>* ~In C++11 kann auch gemoved werden.~</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2402614</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2402614</guid><dc:creator><![CDATA[Columbo]]></dc:creator><pubDate>Thu, 05 Jun 2014 16:58:18 GMT</pubDate></item><item><title><![CDATA[Reply to struct array funktion übergeben on Fri, 06 Jun 2014 15:16:06 GMT]]></title><description><![CDATA[<p>Danke für die Antwort!<br />
Kann man das aber auch in einer Funktion lösen (auch wenn es ein wenig schwerer ist). Weil <strong>ich</strong> finde das direkt im <strong>struct-Element</strong>(also so) ein wenig schwer zu verstehen.</p>
<pre><code>data( std::string const&amp; username,
          std::string const&amp; password ) :
        username(username),
        password(password) {}
</code></pre>
<p>Du hast es mir jedzt schon erklärt aber wirklich verstehen tue ich es nocht nicht.</p>
<blockquote>
<p>Im Gegensatz zu push_back, welches ein Objekt nimmt und eine Kopie* davon einfügt, nimmt emplace_back direkt die Konstruktorargumente entgegen.</p>
</blockquote>
<p>Hier genauso. Es wird der Vector um eins vergrößert richtig? Und mit jeder vergrößerung kann ich 2 Variablen neu ansprechen? (1x username &amp; 1x password?)</p>
<p>Gruß</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2402755</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2402755</guid><dc:creator><![CDATA[Fensterscheibe]]></dc:creator><pubDate>Fri, 06 Jun 2014 15:16:06 GMT</pubDate></item><item><title><![CDATA[Reply to struct array funktion übergeben on Fri, 06 Jun 2014 15:19:35 GMT]]></title><description><![CDATA[<p>Fensterscheibe schrieb:</p>
<blockquote>
<p>Danke für die Antwort!<br />
Kann man das aber auch in einer Funktion lösen (auch wenn es ein wenig schwerer ist). Weil <strong>ich</strong> finde das direkt im <strong>struct-Element</strong>(also so) ein wenig schwer zu verstehen.</p>
<pre><code>data( std::string const&amp; username,
          std::string const&amp; password ) :
        username(username),
        password(password) {}
</code></pre>
<p>Du hast es mir jedzt schon erklärt aber wirklich verstehen tue ich es nocht nicht.</p>
</blockquote>
<p>Hattest du schon Memberfunktionen?<br />
Wenn nein, dann ist das schwer zu verstehen.<br />
Stell dir die Funktion so vor:</p>
<pre><code>struct data {...}
data make_data(std::string const&amp; username, std::string const&amp; password)
{
  data result;
  result.username = username;
  result.password = password;
  return result;
}

int main()
{
  data d = make_data(&quot;foo&quot;, &quot;bar&quot;);
}
</code></pre>
<p>Nur anstatt das so zu schreiben steht das da eben in der struct drin.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2402757</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2402757</guid><dc:creator><![CDATA[Nathan]]></dc:creator><pubDate>Fri, 06 Jun 2014 15:19:35 GMT</pubDate></item><item><title><![CDATA[Reply to struct array funktion übergeben on Fri, 06 Jun 2014 17:50:22 GMT]]></title><description><![CDATA[<blockquote>
<p>Hattest du schon Memberfunktionen?<br />
Wenn nein, dann ist das schwer zu verstehen.</p>
</blockquote>
<p>Ja ich habe das Kapitel durchgelesen und damit noch nie etwas richtiges angestellt. (leider)</p>
<p>Auf jedenfall ist das um einiges einfacher zu verstehen <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f603.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--grinning_face_with_big_eyes"
      title=":D"
      alt="😃"
    /> (finde ich)</p>
<p>Aber wie ich sehe ich das, die oder der struct nun global, sprich für jeden zugänglich. Das sollte man doch möglichst verhindern oder nicht?<br />
Und warum ist der Rückgabetyp der Funktion data? Damit das in das, die oder der struct geschrieben wird?</p>
<p>Und mein letzte Frage<br />
Was hat es mit diesen foo &amp; bar auf sich? Ich lese das so oft hier kann das aber nicht zuordnen <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f603.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--grinning_face_with_big_eyes"
      title=":D"
      alt="😃"
    /> Oder wurde das einfach weitergetragen und hat eigendlich gar keinen Sin?</p>
<p>Gruß</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2402783</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2402783</guid><dc:creator><![CDATA[Fensterscheibe]]></dc:creator><pubDate>Fri, 06 Jun 2014 17:50:22 GMT</pubDate></item><item><title><![CDATA[Reply to struct array funktion übergeben on Fri, 06 Jun 2014 17:55:19 GMT]]></title><description><![CDATA[<p>Fensterscheibe schrieb:</p>
<blockquote>
<p>Aber wie ich sehe ich das, die oder der struct nun global, sprich für jeden zugänglich. Das sollte man doch möglichst verhindern oder nicht?</p>
</blockquote>
<p>Ja, das Prinzip dahinter heißt Kapselung und macht man durch private Daten.</p>
<blockquote>
<p>Und warum ist der Rückgabetyp der Funktion data? Damit das in das, die oder der struct geschrieben wird?</p>
</blockquote>
<p>Das ist nur ein Beispiel, das ist nicht wirklich so wenn du einen Konstruktor schreibst.</p>
<blockquote>
<p>Und mein letzte Frage<br />
Was hat es mit diesen foo &amp; bar auf sich? Ich lese das so oft hier kann das aber nicht zuordnen <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f603.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--grinning_face_with_big_eyes"
      title=":D"
      alt="😃"
    /> Oder wurde das einfach weitergetragen und hat eigendlich gar keinen Sin?</p>
</blockquote>
<p>Nein, das macht keinen Sinn: <a href="http://de.wikipedia.org/wiki/Metasyntaktische_Variable" rel="nofollow">http://de.wikipedia.org/wiki/Metasyntaktische_Variable</a></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2402784</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2402784</guid><dc:creator><![CDATA[Nathan]]></dc:creator><pubDate>Fri, 06 Jun 2014 17:55:19 GMT</pubDate></item><item><title><![CDATA[Reply to struct array funktion übergeben on Fri, 06 Jun 2014 17:55:41 GMT]]></title><description><![CDATA[<p>s. <a href="http://de.wikipedia.org/wiki/Foobar#Foo_im_IT-Umfeld" rel="nofollow">http://de.wikipedia.org/wiki/Foobar#Foo_im_IT-Umfeld</a></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2402785</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2402785</guid><dc:creator><![CDATA[Th69]]></dc:creator><pubDate>Fri, 06 Jun 2014 17:55:41 GMT</pubDate></item><item><title><![CDATA[Reply to struct array funktion übergeben on Fri, 06 Jun 2014 19:20:18 GMT]]></title><description><![CDATA[<p>Okay also ich muss nochmal fragen ^^<br />
So schnell werdet ihr mich nicht los haha <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f603.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--grinning_face_with_big_eyes"
      title=":D"
      alt="😃"
    /></p>
<p>So ich habe versucht nun euer Hilfe zusammen zu fügen aber ohne Erfolg...</p>
<pre><code>struct data {
    string username;
    string password;
};

void make_data(std::string const&amp; username, std::string const&amp; password){

  user.username = username;
  user.password = password;

}

int main(){
    std::vector&lt;data&gt; users;//Das habe ich einfach kopiert...

    string username=&quot;foo&quot;;
    string password=&quot;bar&quot;;

    data user;
    make_data(username, password);

    return 0;
}
</code></pre>
<p>Ich weiß das der Vector gar nicht hochgezählt wird, und gar nicht so wirklich eine Verbindung herrscht. Ich bekomme es aber auch nicht besser hin :s</p>
<p>Und mein Wunsch war halt einen &quot;User&quot; mit Passwort und Benutzernamen anlegen zu können.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2402807</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2402807</guid><dc:creator><![CDATA[Fensterscheibe]]></dc:creator><pubDate>Fri, 06 Jun 2014 19:20:18 GMT</pubDate></item><item><title><![CDATA[Reply to struct array funktion übergeben on Fri, 06 Jun 2014 19:35:56 GMT]]></title><description><![CDATA[<blockquote>
<pre><code>void make_data(std::string const&amp; username, std::string const&amp; password){
 
  user.username = username;
  user.password = password;
 
}
</code></pre>
</blockquote>
<p>Vergleich doch mal mit der Funktion, die dir gezeigt wurde. Alles was wichtig war, hast du entfernt, bis das Ergebnis überhaupt keinen Sinn mehr machte.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2402809</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2402809</guid><dc:creator><![CDATA[SeppJ]]></dc:creator><pubDate>Fri, 06 Jun 2014 19:35:56 GMT</pubDate></item><item><title><![CDATA[Reply to struct array funktion übergeben on Fri, 06 Jun 2014 19:55:37 GMT]]></title><description><![CDATA[<p>Ich weiß ich habe sehr vieles rausgenommen.<br />
Z.B. das hier <strong>data user;</strong> ich dachte das müsste ich in der main machen weil ich möchte die ganzen User auch noch ausgeben und wenn ich <strong>data user;</strong> in der Funktion schreibe ist dies nicht gültig in der main.<br />
Dann <strong>return result;</strong></p>
<blockquote>
<blockquote>
<p>Und warum ist der Rückgabetyp der Funktion data? Damit das in das, die oder der struct geschrieben wird?</p>
</blockquote>
<p>Das ist nur ein Beispiel, das ist nicht wirklich so wenn du einen Konstruktor schreibst.</p>
</blockquote>
<p>Deswegen frage ich ja... Ich komme damit so gar nicht klar momentan <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=":/"
      alt="😕"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2402812</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2402812</guid><dc:creator><![CDATA[Fensterscheibe]]></dc:creator><pubDate>Fri, 06 Jun 2014 19:55:37 GMT</pubDate></item><item><title><![CDATA[Reply to struct array funktion übergeben on Sat, 07 Jun 2014 08:52:20 GMT]]></title><description><![CDATA[<p>Wenn du bisher noch gar keine Memberfunktionen verwendest (bzw. verstanden hast), dann nimm ersteinmal diese Version:</p>
<pre><code class="language-cpp">struct data
{
    string username;
    string password;
};

void make_data(data&amp; user, std::string const&amp; username, std::string const&amp; password)
{
    user.username = username;
    user.password = password;
}

int main()
{
    std::vector&lt;data&gt; users;

    string username=&quot;foo&quot;;
    string password=&quot;bar&quot;;

    data user;
    make_data(user, username, password);

    users.push_back(user);

    std::cout &lt;&lt; users.front().username &lt;&lt; &quot;-------&quot; &lt;&lt; users.front().password &lt;&lt; '\n';

    return 0;
}
</code></pre>
<p>Ich hoffe, ich habe jetzt keinen Syntax-Error hier eingebaut.<br />
Und versuche jetzt, diesen Code zu verstehen...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2402855</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2402855</guid><dc:creator><![CDATA[Th69]]></dc:creator><pubDate>Sat, 07 Jun 2014 08:52:20 GMT</pubDate></item><item><title><![CDATA[Reply to struct array funktion übergeben on Sat, 07 Jun 2014 12:14:54 GMT]]></title><description><![CDATA[<p>Oha ja! Das ist mir um einiges Verständlicher.<br />
Aber mein Versuch ähnelt dem ja schon ein wenig... <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f603.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--grinning_face_with_big_eyes"
      title=":D"
      alt="😃"
    /></p>
<p>Nur wenn ich jedzt z.B. das in einer Schleife packe sodass ich 5 User angelegt habe, wie spreche ich die nun einzelnd an?<br />
Das wäre dann auch schon meine letzte Frage <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/2402877</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2402877</guid><dc:creator><![CDATA[Fensterscheibe]]></dc:creator><pubDate>Sat, 07 Jun 2014 12:14:54 GMT</pubDate></item><item><title><![CDATA[Reply to struct array funktion übergeben on Sat, 07 Jun 2014 14:23:08 GMT]]></title><description><![CDATA[<p>Du kannst über den vector iterieren:</p>
<pre><code class="language-cpp">for(std::vector&lt;data&gt;::const_iterator it = users.begin(); it != users.end(); ++it)
  cout &lt;&lt; it-&gt;username;
</code></pre>
<p>In C++11 geht das auch kürzer mit</p>
<pre><code class="language-cpp">for(const auto &amp; user : users)
  cout &lt;&lt; user.username;
</code></pre>
<p>s.a. <a href="http://www.codeproject.com/Articles/570638/Ten-Cplusplus-Features-Every-Cplusplus-Developer" rel="nofollow">Ten C++11 Features Every C++ Developer Should Use</a></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2402894</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2402894</guid><dc:creator><![CDATA[Th69]]></dc:creator><pubDate>Sat, 07 Jun 2014 14:23:08 GMT</pubDate></item><item><title><![CDATA[Reply to struct array funktion übergeben on Sun, 08 Jun 2014 11:36:04 GMT]]></title><description><![CDATA[<p>Danke für die Antwort. Und ich hätte mir vorher nochmal angucken sollen wie son Vektor überhaupt &quot;funktioniert&quot;.<br />
Aufjedenfall möchte ich jedzt die eingaben die in dem Vektor gespeichert sind in eine .txt schreiben, innerhalb einer Funktion. Das Problem dabei ist das der Vektor halt nur in der main bekannt ist.</p>
<pre><code>struct data{
    string username;
    string password;
};

void write(data user, ??){ //Hier
    fstream p_shadow;
    p_shadow.open(&quot;shadow.txt&quot;, ios::out|ios::trunc);
    if(!p_shadow){
        cout &lt;&lt; &quot;Datei konnt nicht geöffnet werden!&quot;;
    }
    else{
        for(unsigned int i=0;i&lt;users.size();i++){
            cout &lt;&lt; users[i].username &lt;&lt; '\n';
            cout &lt;&lt; users[i].password &lt;&lt; '\n';
        }
        p_shadow.close();
    }
}

int main(){
    vector&lt;data&gt; users;

    write(user, ??) //Hier
}
</code></pre>
<p>Und ich weiß nicht wie ich den Vektor nun übergebe.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2402967</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2402967</guid><dc:creator><![CDATA[Fensterscheibe]]></dc:creator><pubDate>Sun, 08 Jun 2014 11:36:04 GMT</pubDate></item><item><title><![CDATA[Reply to struct array funktion übergeben on Sun, 08 Jun 2014 12:06:47 GMT]]></title><description><![CDATA[<p>Du übergibst ihn genauso wie du alles andere auch an Funktionen übergibst...?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2402974</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2402974</guid><dc:creator><![CDATA[Nathan]]></dc:creator><pubDate>Sun, 08 Jun 2014 12:06:47 GMT</pubDate></item></channel></rss>