<?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[constexpr und casts]]></title><description><![CDATA[<p>Hi,</p>
<p>GCC 4.6.1 nimmt folgende Funktion an und meckert auch nicht</p>
<pre><code class="language-cpp">constexpr unsigned int SquareToUInt(Square s) //Square ist eine enum class
	{
		return static_cast&lt;unsigned&gt;(s);
	}
</code></pre>
<p>Ich frage mich ob der cast den kompletten Sinn von constexpr nicht verwirft? Sprich, der Compiler macht eine normale Funktion daraus?</p>
<p>Grüße</p>
<p>OP</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/300373/constexpr-und-casts</link><generator>RSS for Node</generator><lastBuildDate>Wed, 12 Aug 2026 21:13:46 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/300373.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 01 Mar 2012 20:19:23 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to constexpr und casts on Thu, 01 Mar 2012 20:19:23 GMT]]></title><description><![CDATA[<p>Hi,</p>
<p>GCC 4.6.1 nimmt folgende Funktion an und meckert auch nicht</p>
<pre><code class="language-cpp">constexpr unsigned int SquareToUInt(Square s) //Square ist eine enum class
	{
		return static_cast&lt;unsigned&gt;(s);
	}
</code></pre>
<p>Ich frage mich ob der cast den kompletten Sinn von constexpr nicht verwirft? Sprich, der Compiler macht eine normale Funktion daraus?</p>
<p>Grüße</p>
<p>OP</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2187529</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2187529</guid><dc:creator><![CDATA[OP]]></dc:creator><pubDate>Thu, 01 Mar 2012 20:19:23 GMT</pubDate></item><item><title><![CDATA[Reply to constexpr und casts on Thu, 01 Mar 2012 20:20:28 GMT]]></title><description><![CDATA[<p>Ok, ich glaube wenn, dann macht die enum class schon einen Strich durch die Rechnung, oder?</p>
<p>Grüße</p>
<p>OP</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2187530</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2187530</guid><dc:creator><![CDATA[OP]]></dc:creator><pubDate>Thu, 01 Mar 2012 20:20:28 GMT</pubDate></item><item><title><![CDATA[Reply to constexpr und casts on Thu, 01 Mar 2012 20:53:34 GMT]]></title><description><![CDATA[<p>Nein, das ist vollkommen okay, solange der übergebene Parameter auch constexpr ist.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2187545</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2187545</guid><dc:creator><![CDATA[314159265358979]]></dc:creator><pubDate>Thu, 01 Mar 2012 20:53:34 GMT</pubDate></item><item><title><![CDATA[Reply to constexpr und casts on Thu, 01 Mar 2012 21:16:08 GMT]]></title><description><![CDATA[<p>Das würde ja auch auf <strong>enum class</strong> zutreffen oder nicht?</p>
<p>enum class:</p>
<pre><code class="language-cpp">enum class Square : unsigned int
{
    A = 1,
    B = 2
};
</code></pre>
<p>Aufruf:</p>
<pre><code class="language-cpp">SquareToUInt(Square::A); //Sollte ja const sein oder nicht?
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2187552</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2187552</guid><dc:creator><![CDATA[OP]]></dc:creator><pubDate>Thu, 01 Mar 2012 21:16:08 GMT</pubDate></item></channel></rss>