<?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[vector in Schleife mit structs befülllen]]></title><description><![CDATA[<p>Hallo zusammen,</p>
<p>mir fehlt leider die Syntax für mein im Titel geschildertes Vorhaben. Zwar kompiliert der Code, doch erhalte ich eine Warnung, die mir sagt, dass es so nur in C++0x funktioniert. Wie lautet denn der herkömmliche Code?</p>
<pre><code class="language-cpp">struct pixelIndex {
        unsigned char value;
        int x;
        int y;
};

//...

vector&lt;pixelIndex&gt; sorted;

for(int i = 0; i &lt; pData.size(); i++) {
   sorted.push_back(pixelIndex {pData[i], i, 0});
}
</code></pre>
<p>Danke</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/313023/vector-in-schleife-mit-structs-befülllen</link><generator>RSS for Node</generator><lastBuildDate>Sun, 02 Aug 2026 09:20:31 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/313023.rss" rel="self" type="application/rss+xml"/><pubDate>Sat, 19 Jan 2013 22:00:07 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to vector in Schleife mit structs befülllen on Sat, 19 Jan 2013 22:00:07 GMT]]></title><description><![CDATA[<p>Hallo zusammen,</p>
<p>mir fehlt leider die Syntax für mein im Titel geschildertes Vorhaben. Zwar kompiliert der Code, doch erhalte ich eine Warnung, die mir sagt, dass es so nur in C++0x funktioniert. Wie lautet denn der herkömmliche Code?</p>
<pre><code class="language-cpp">struct pixelIndex {
        unsigned char value;
        int x;
        int y;
};

//...

vector&lt;pixelIndex&gt; sorted;

for(int i = 0; i &lt; pData.size(); i++) {
   sorted.push_back(pixelIndex {pData[i], i, 0});
}
</code></pre>
<p>Danke</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2291453</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2291453</guid><dc:creator><![CDATA[freakC++]]></dc:creator><pubDate>Sat, 19 Jan 2013 22:00:07 GMT</pubDate></item><item><title><![CDATA[Reply to vector in Schleife mit structs befülllen on Sat, 19 Jan 2013 22:03:06 GMT]]></title><description><![CDATA[<p>Für C++11 kann man sogar schreiben:</p>
<pre><code>for(int i = 0; i &lt; pData.size(); i++) { 
   sorted.push_back({pData[i], i, 0}); 
}
</code></pre>
<p>Wobei die &quot;herkömmliche&quot; Variante die hier ist:</p>
<pre><code>for(int i = 0; i &lt; pData.size(); i++) {
   pixelIndex pi = {pData[i], i, 0};
   sorted.push_back(pi); 
}
</code></pre>
<p>Oder du schreibst einen entsprechenden Konstruktor für pixelIndex und tauschst {} durch (). Allerdings wüsste ich nicht, warum man C++11 Features nicht nutzen sollte, wenn dein Compiler die bereits unterstützt. Gibt's da spezielle Gründe? Portabel ist der Code letztlich trotzdem, spätestens in 3-6 Monaten werden wohl alle großen Compiler dieses Feature unterstützen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2291455</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2291455</guid><dc:creator><![CDATA[cooky451]]></dc:creator><pubDate>Sat, 19 Jan 2013 22:03:06 GMT</pubDate></item><item><title><![CDATA[Reply to vector in Schleife mit structs befülllen on Sat, 19 Jan 2013 22:07:09 GMT]]></title><description><![CDATA[<p>cooky451 schrieb:</p>
<blockquote>
<p>Für C++11 kann man sogar schreiben:</p>
<pre><code>for(int i = 0; i &lt; pData.size(); i++) { 
   sorted.push_back({pData[i], i, 0}); 
}
</code></pre>
</blockquote>
<p>Also ich mag eher das hier:</p>
<pre><code class="language-cpp">for (int i : range(pData.size())
   sorted.emplace_back(pData[i], i, 0);
</code></pre>
<p>So eine <code>range</code> -Klasse hat vermutlich jeder, der öfters mit C++11 programmiert.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2291456</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2291456</guid><dc:creator><![CDATA[emplacer]]></dc:creator><pubDate>Sat, 19 Jan 2013 22:07:09 GMT</pubDate></item><item><title><![CDATA[Reply to vector in Schleife mit structs befülllen on Sat, 19 Jan 2013 22:13:27 GMT]]></title><description><![CDATA[<p>Ui ja, emplace ist natürlich schöner, gar nicht dran gedacht. <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="👍"
    /> Streng genommen halt auch C++11, aber das Feature sollte bereits jetzt jeder aktuelle Compiler haben. - Das mit der Range-Klasse.. ich lass mich davon überzeugen wenn ich weiß, wie gut Compiler das optimieren. <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>
]]></description><link>https://www.c-plusplus.net/forum/post/2291458</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2291458</guid><dc:creator><![CDATA[cooky451]]></dc:creator><pubDate>Sat, 19 Jan 2013 22:13:27 GMT</pubDate></item></channel></rss>