<?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[Dummy übergeben]]></title><description><![CDATA[<p>Hallo!</p>
<p>Man kennt es ja, manche Funktionen wollen unbedingt ein Argument beschreiben, auch wenn der Wert dann gar nicht benötigt wird (WinAPI zB.) und bei nem nullptr failed die Funktion, also muss man ne Dummyvariable anlegen.</p>
<p>Man könnte auch das machen:</p>
<pre><code>template&lt;unsigned int bytes&gt;
std::array&lt;unsigned char, bytes&gt; Dummy()
{
	return std::array&lt;unsigned char, bytes&gt;();
}

Dummy&lt;4&gt;().data() // der Funktion übergeben
</code></pre>
<p>Aber geht das nicht einfacher? Und warum hat C++ keine anon. arrays/structs?</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/324966/dummy-übergeben</link><generator>RSS for Node</generator><lastBuildDate>Mon, 13 Jul 2026 07:58:31 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/324966.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 09 Apr 2014 16:02:36 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Dummy übergeben on Wed, 09 Apr 2014 16:02:36 GMT]]></title><description><![CDATA[<p>Hallo!</p>
<p>Man kennt es ja, manche Funktionen wollen unbedingt ein Argument beschreiben, auch wenn der Wert dann gar nicht benötigt wird (WinAPI zB.) und bei nem nullptr failed die Funktion, also muss man ne Dummyvariable anlegen.</p>
<p>Man könnte auch das machen:</p>
<pre><code>template&lt;unsigned int bytes&gt;
std::array&lt;unsigned char, bytes&gt; Dummy()
{
	return std::array&lt;unsigned char, bytes&gt;();
}

Dummy&lt;4&gt;().data() // der Funktion übergeben
</code></pre>
<p>Aber geht das nicht einfacher? Und warum hat C++ keine anon. arrays/structs?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2393634</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2393634</guid><dc:creator><![CDATA[mhat]]></dc:creator><pubDate>Wed, 09 Apr 2014 16:02:36 GMT</pubDate></item><item><title><![CDATA[Reply to Dummy übergeben on Wed, 09 Apr 2014 16:19:06 GMT]]></title><description><![CDATA[<p>Einfacher? Du meinst so?</p>
<pre><code>foo(std::array&lt;unsigned char, 4&gt;().data());
</code></pre>
<p>Oder so?</p>
<pre><code>template &lt;std::size_t Size&gt;
using bytearray = std::array&lt;unsigned char, Size&gt;;

foo(bytearray&lt;4&gt;().data());
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2393641</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2393641</guid><dc:creator><![CDATA[cooky451]]></dc:creator><pubDate>Wed, 09 Apr 2014 16:19:06 GMT</pubDate></item><item><title><![CDATA[Reply to Dummy übergeben on Wed, 09 Apr 2014 16:26:16 GMT]]></title><description><![CDATA[<p>Hat man da nicht Probleme mit dem Alignment?<br />
Ich würd eher:</p>
<pre><code>template &lt;typename T&gt;
T* give_me_lvalue()
{
  static T val;
  return &amp;val;
}
</code></pre>
<p>verwenden, wenn es denn unbedingt sein muss.<br />
WinAPI-Funktionen u.ä. sollte man eh mit RAII abkapseln und da stören die Dummy-WORDs/floats etc auch nicht.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2393643</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2393643</guid><dc:creator><![CDATA[Nathan]]></dc:creator><pubDate>Wed, 09 Apr 2014 16:26:16 GMT</pubDate></item><item><title><![CDATA[Reply to Dummy übergeben on Wed, 09 Apr 2014 16:27:17 GMT]]></title><description><![CDATA[<pre><code>template&lt;std::size_t bytes&gt;
std::array&lt;unsigned char, bytes&gt; Dummy = {};
</code></pre>
<blockquote>
<p>Hat man da nicht Probleme mit dem Alignment?</p>
</blockquote>
<p>Äh, was?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2393644</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2393644</guid><dc:creator><![CDATA[Columbo]]></dc:creator><pubDate>Wed, 09 Apr 2014 16:27:17 GMT</pubDate></item><item><title><![CDATA[Reply to Dummy übergeben on Wed, 09 Apr 2014 16:34:33 GMT]]></title><description><![CDATA[<p>Arcoth schrieb:</p>
<blockquote>
<pre><code>template&lt;std::size_t bytes&gt;
std::array&lt;unsigned char, bytes&gt; Dummy = {};
</code></pre>
<blockquote>
<p>Hat man da nicht Probleme mit dem Alignment?</p>
</blockquote>
<p>Äh, was?</p>
</blockquote>
<p>So wie ich den TE verstanden habe, regt er sich darüber auf, dass es viele WinAPI-Funktionen gibt, die Adressen von Variablen verlangen, wo sie dann irgendwelche Werte reinschreiben. Dafür muss man dann Dummys anlegen, obwohl man sich gar nicht für die Werte interessiert. Zur Vermeidung hat er sich diese Idee überlegt.<br />
Ich denk aber, dass es da Probleme gibt, wenn man da jetzt irgendwelche ints reinschreiben will oder so.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2393646</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2393646</guid><dc:creator><![CDATA[Nathan]]></dc:creator><pubDate>Wed, 09 Apr 2014 16:34:33 GMT</pubDate></item><item><title><![CDATA[Reply to Dummy übergeben on Wed, 09 Apr 2014 16:46:00 GMT]]></title><description><![CDATA[<p>Also so wie ich das verstanden habe meint er schon char-arrays, ansonsten geht das so nicht, da hast du recht.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2393652</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2393652</guid><dc:creator><![CDATA[cooky451]]></dc:creator><pubDate>Wed, 09 Apr 2014 16:46:00 GMT</pubDate></item><item><title><![CDATA[Reply to Dummy übergeben on Wed, 09 Apr 2014 16:47:13 GMT]]></title><description><![CDATA[<p>So wie ich es verstanden habe, hat der TE nicht vor, für <code>int* char*</code> zu übergeben, sondern immer ein Dummy vom entsprechenden Typ.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2393653</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2393653</guid><dc:creator><![CDATA[Columbo]]></dc:creator><pubDate>Wed, 09 Apr 2014 16:47:13 GMT</pubDate></item><item><title><![CDATA[Reply to Dummy übergeben on Wed, 09 Apr 2014 21:02:27 GMT]]></title><description><![CDATA[<p>Arcoth schrieb:</p>
<blockquote>
<p>So wie ich es verstanden habe, hat der TE nicht vor, für <code>int* char*</code> zu übergeben, sondern immer ein Dummy vom entsprechenden Typ.</p>
</blockquote>
<p>Hat Stephan T. Lavavej nicht auch mal so etwas gemacht, in Verbindung mit Containern? Bin mir nicht ganz sicher, aber es könnte der <code>pretty_printer</code> gewesen sein.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2393720</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2393720</guid><dc:creator><![CDATA[out]]></dc:creator><pubDate>Wed, 09 Apr 2014 21:02:27 GMT</pubDate></item></channel></rss>