<?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[Wie Makro ignorieren?]]></title><description><![CDATA[<p>Ich versuche folgende Methode aufzurufen:<br />
std::numeric_limits&lt;double&gt;::max();<br />
leider klappt dies nicht, weil max blöderweise ein makro ist:</p>
<pre><code class="language-cpp">// Datei WinDef.h

#ifndef max
#define max(a,b)            (((a) &gt; (b)) ? (a) : (b))
#endif
</code></pre>
<p>Nun habe ich diese Datei nicht bewusst included, ich weiß nicht mal, wieso das benutzt wird (Es ist ein VC++ Projekt und es gibt keine include anweisung davon, auch kein stdafx.h)<br />
Aber dies ist auch nicht relevant, mein Interesse ist, ob ich irgendwie an das max rankomme, ohne das makro?</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/227372/wie-makro-ignorieren</link><generator>RSS for Node</generator><lastBuildDate>Sun, 27 Sep 2026 15:38:26 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/227372.rss" rel="self" type="application/rss+xml"/><pubDate>Fri, 14 Nov 2008 13:14:47 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Wie Makro ignorieren? on Fri, 14 Nov 2008 13:17:10 GMT]]></title><description><![CDATA[<p>Ich versuche folgende Methode aufzurufen:<br />
std::numeric_limits&lt;double&gt;::max();<br />
leider klappt dies nicht, weil max blöderweise ein makro ist:</p>
<pre><code class="language-cpp">// Datei WinDef.h

#ifndef max
#define max(a,b)            (((a) &gt; (b)) ? (a) : (b))
#endif
</code></pre>
<p>Nun habe ich diese Datei nicht bewusst included, ich weiß nicht mal, wieso das benutzt wird (Es ist ein VC++ Projekt und es gibt keine include anweisung davon, auch kein stdafx.h)<br />
Aber dies ist auch nicht relevant, mein Interesse ist, ob ich irgendwie an das max rankomme, ohne das makro?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1614648</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1614648</guid><dc:creator><![CDATA[Seikilos]]></dc:creator><pubDate>Fri, 14 Nov 2008 13:17:10 GMT</pubDate></item><item><title><![CDATA[Reply to Wie Makro ignorieren? on Fri, 14 Nov 2008 13:17:02 GMT]]></title><description><![CDATA[<p>Eine Option: #undef max</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1614652</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1614652</guid><dc:creator><![CDATA[Fellhuhn]]></dc:creator><pubDate>Fri, 14 Nov 2008 13:17:02 GMT</pubDate></item><item><title><![CDATA[Reply to Wie Makro ignorieren? on Fri, 14 Nov 2008 13:22:21 GMT]]></title><description><![CDATA[<p>Ah, danke für die schnelle Hilfe. Aber so ist es im Projekt komplett weg, was ungünstig sein könnte.<br />
gibt es so etwas auch temporär ?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1614661</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1614661</guid><dc:creator><![CDATA[Seikilos]]></dc:creator><pubDate>Fri, 14 Nov 2008 13:22:21 GMT</pubDate></item><item><title><![CDATA[Reply to Wie Makro ignorieren? on Fri, 14 Nov 2008 13:25:56 GMT]]></title><description><![CDATA[<p>Seikilos schrieb:</p>
<blockquote>
<p>Ah, danke für die schnelle Hilfe. Aber so ist es im Projekt komplett weg, was ungünstig sein könnte.<br />
gibt es so etwas auch temporär ?</p>
</blockquote>
<p>Doch, lass die am besten draussen und wenn du max brauchst, benutz lieber <a href="http://www.cplusplus.com/reference/algorithm/max.html" rel="nofollow">std::max</a></p>
<p>Die obige Version ist völliger Mist..</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1614663</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1614663</guid><dc:creator><![CDATA[drakon]]></dc:creator><pubDate>Fri, 14 Nov 2008 13:25:56 GMT</pubDate></item><item><title><![CDATA[Reply to Wie Makro ignorieren? on Fri, 14 Nov 2008 13:27:45 GMT]]></title><description><![CDATA[<p>Du kannst es auch in Klammern setzen:</p>
<p>(std::numeric_limits&lt;double&gt;::max)();</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1614665</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1614665</guid><dc:creator><![CDATA[Drehleiter]]></dc:creator><pubDate>Fri, 14 Nov 2008 13:27:45 GMT</pubDate></item><item><title><![CDATA[Reply to Wie Makro ignorieren? on Fri, 14 Nov 2008 13:28:54 GMT]]></title><description><![CDATA[<p>Seikilos schrieb:</p>
<blockquote>
<p>Ich versuche folgende Methode aufzurufen:<br />
std::numeric_limits&lt;double&gt;::max();<br />
leider klappt dies nicht, weil max blöderweise ein makro ist:</p>
<pre><code class="language-cpp">// Datei WinDef.h

#ifndef max
#define max(a,b)            (((a) &gt; (b)) ? (a) : (b))
#endif
</code></pre>
<p>Nun habe ich diese Datei nicht bewusst included, ich weiß nicht mal, wieso das benutzt wird (Es ist ein VC++ Projekt und es gibt keine include anweisung davon, auch kein stdafx.h)<br />
Aber dies ist auch nicht relevant, mein Interesse ist, ob ich irgendwie an das max rankomme, ohne das makro?</p>
</blockquote>
<p>Komische Frage, aber du benutzt nicht zufälligerweise <code>boost::thread</code> in deinem Projekt? <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>MfG</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1614667</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1614667</guid><dc:creator><![CDATA[*rant*]]></dc:creator><pubDate>Fri, 14 Nov 2008 13:28:54 GMT</pubDate></item><item><title><![CDATA[Reply to Wie Makro ignorieren? on Fri, 14 Nov 2008 13:53:49 GMT]]></title><description><![CDATA[<p>Boost ja, thread nö.</p>
<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/20024">@Drehleiter</a>: Der Tipp war Gold wert <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>Danke</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1614682</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1614682</guid><dc:creator><![CDATA[Seikilos]]></dc:creator><pubDate>Fri, 14 Nov 2008 13:53:49 GMT</pubDate></item><item><title><![CDATA[Reply to Wie Makro ignorieren? on Fri, 14 Nov 2008 14:08:39 GMT]]></title><description><![CDATA[<p>Seikilos schrieb:</p>
<blockquote>
<p>Boost ja, thread nö.</p>
<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/20024">@Drehleiter</a>: Der Tipp war Gold wert <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>Danke</p>
</blockquote>
<p>Sorry, aber der Tipp ist Mist.</p>
<p>Du musst das Problem beheben und nicht einen merkwürdigen Hack benutzen. Oder hast du Lust das jedesmal so zu schreiben?</p>
<p>Stell dir ansonsten ja auch mal vor, dass du etwas m_MaxCount nennen willst.. Dann hast du schon das nächste Problem..</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1614691</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1614691</guid><dc:creator><![CDATA[drakon]]></dc:creator><pubDate>Fri, 14 Nov 2008 14:08:39 GMT</pubDate></item><item><title><![CDATA[Reply to Wie Makro ignorieren? on Fri, 14 Nov 2008 14:35:43 GMT]]></title><description><![CDATA[<p>drakon schrieb:</p>
<blockquote>
<p>Stell dir ansonsten ja auch mal vor, dass du etwas m_MaxCount nennen willst.. Dann hast du schon das nächste Problem..</p>
</blockquote>
<p>Das sollte eigentlich gehen, weil vom Präprozessor nur ganze Wörter (die auch in Gross-/Kleinschreibung übereinstimmen) ersetzt werden.</p>
<p>Trotzdem ist Drehleiters Tipp nicht wirklich brauchbar. Seikilos, überleg dir mal, wo du die WinDef.h inkludiert hast. Das Problem sollte zu lösen sein, wenn du vorher folgendes Makro definierst:</p>
<pre><code class="language-cpp">#define NOMINMAX
</code></pre>
<p>Siehe ansonsten auch <a href="http://www.c-plusplus.net/forum/viewtopic-var-t-is-221776.html" rel="nofollow">den Thread mit gleicher Thematik</a>.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1614708</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1614708</guid><dc:creator><![CDATA[Nexus]]></dc:creator><pubDate>Fri, 14 Nov 2008 14:35:43 GMT</pubDate></item><item><title><![CDATA[Reply to Wie Makro ignorieren? on Fri, 14 Nov 2008 14:44:14 GMT]]></title><description><![CDATA[<p>Nexus schrieb:</p>
<blockquote>
<p>drakon schrieb:</p>
<blockquote>
<p>Stell dir ansonsten ja auch mal vor, dass du etwas m_MaxCount nennen willst.. Dann hast du schon das nächste Problem..</p>
</blockquote>
<p>Das sollte eigentlich gehen, weil vom Präprozessor nur ganze Wörter (die auch in Gross-/Kleinschreibung übereinstimmen) ersetzt werden.</p>
</blockquote>
<p>Hmpf.. Es ist eindeutig schon zu spät.. Ich muss ins Bett. Schliesslich gehts Morgen endlich wieder an den Strand.. <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>
]]></description><link>https://www.c-plusplus.net/forum/post/1614712</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1614712</guid><dc:creator><![CDATA[drakon]]></dc:creator><pubDate>Fri, 14 Nov 2008 14:44:14 GMT</pubDate></item><item><title><![CDATA[Reply to Wie Makro ignorieren? on Fri, 14 Nov 2008 14:45:13 GMT]]></title><description><![CDATA[<p>drakon schrieb:</p>
<blockquote>
<p>Schliesslich gehts Morgen endlich wieder an den Strand.. <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>
</blockquote>
<p>Na, dann noch schöne Ferien... <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/1614713</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1614713</guid><dc:creator><![CDATA[Nexus]]></dc:creator><pubDate>Fri, 14 Nov 2008 14:45:13 GMT</pubDate></item><item><title><![CDATA[Reply to Wie Makro ignorieren? on Fri, 14 Nov 2008 14:49:49 GMT]]></title><description><![CDATA[<p>Nexus schrieb:</p>
<blockquote>
<p>drakon schrieb:</p>
<blockquote>
<p>Schliesslich gehts Morgen endlich wieder an den Strand.. <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>
</blockquote>
<p>Na, dann noch schöne Ferien... <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>
</blockquote>
<p>Hö.. Das sind keine Ferien.. Habe nur am Wochende frei. <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/1614718</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1614718</guid><dc:creator><![CDATA[drakon]]></dc:creator><pubDate>Fri, 14 Nov 2008 14:49:49 GMT</pubDate></item><item><title><![CDATA[Reply to Wie Makro ignorieren? on Fri, 14 Nov 2008 15:32:15 GMT]]></title><description><![CDATA[<p>Und es gibt noch eine Lösung:</p>
<pre><code class="language-cpp">#define NO_MACRO

// ...
std::numeric_limits&lt;double&gt;::max NO_MACRO ();
</code></pre>
<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/18422">@drakon</a>,<br />
Ich ruf mal die australischen Behörden an, die sollen dich rauswerfen. Du verschmutzt nur den Strand :p <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f921.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--clown_face"
      title=":clown:"
      alt="🤡"
    /></p>
<p>Grüssli</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1614740</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1614740</guid><dc:creator><![CDATA[Dravere]]></dc:creator><pubDate>Fri, 14 Nov 2008 15:32:15 GMT</pubDate></item><item><title><![CDATA[Reply to Wie Makro ignorieren? on Fri, 14 Nov 2008 15:33:49 GMT]]></title><description><![CDATA[<p>Dravere schrieb:</p>
<blockquote>
<p>Und es gibt noch eine Lösung</p>
</blockquote>
<p>Wahrscheinlich die hässlichste von allen. :p</p>
<p>Sofern es mit <code>#define NOMINMAX</code> geht, würde ich das auch so machen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1614742</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1614742</guid><dc:creator><![CDATA[Nexus]]></dc:creator><pubDate>Fri, 14 Nov 2008 15:33:49 GMT</pubDate></item><item><title><![CDATA[Reply to Wie Makro ignorieren? on Fri, 14 Nov 2008 15:37:03 GMT]]></title><description><![CDATA[<p>Nexus schrieb:</p>
<blockquote>
<p>Dravere schrieb:</p>
<blockquote>
<p>Und es gibt noch eine Lösung</p>
</blockquote>
<p>Wahrscheinlich die hässlichste von allen. :p</p>
<p>Sofern es mit <code>#define NOMINMAX</code> geht, würde ich das auch so machen.</p>
</blockquote>
<p>Hässlich, aber praktisch. Vor allem wenn das min oder max aus dem Windowsheader benötigt wird, zum Beispiel in der Bibliothek, welche man eingebunden hat und welche eben den Windowsheader einbindet. Mit diesem Hilfsmakro kann man genau sagen, wann will man das Makro verwenden und wann nicht <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>
<p>Grüssli</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1614745</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1614745</guid><dc:creator><![CDATA[Dravere]]></dc:creator><pubDate>Fri, 14 Nov 2008 15:37:03 GMT</pubDate></item><item><title><![CDATA[Reply to Wie Makro ignorieren? on Fri, 14 Nov 2008 21:37:25 GMT]]></title><description><![CDATA[<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/9752">@Dravere</a>:<br />
Da max ein function-style Makro ist kann man es wie schon erwähnt wurde genausogut klammern. Was an der &quot;NO_MACRO&quot; Variante schöner sein soll weiss ich nicht.</p>
<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/18422">@drakon</a>:<br />
Wieso soll der Tip Mist sein? Das Problem kann man nicht beheben da es in den Windows Headern drinnen ist. Wenn man Code schreibt der von anderen Programmen inkludiert werden muss (z.b. weil Templates definiert werden) kann man die &quot;NOMINMAX&quot; Variante und #undef Varianten vergessen - die Programme könnten bereits (ohne NOMINMAX definiert zu haben) windows.h inkludiert haben, und die Programme könnten sich darauf verlassen dass die min und max Makros definiert sind. In dem Fall ist die &quot;schönste&quot; Lösung IMO immer noch (std::min)(a, b) bzw. (std::numeric_limits&lt;T&gt;::max)().</p>
<p>Wenn man Code schreibt der NICHT von fremden Programmen inkludiert wird ist IMO #define NOMINMAX die beste Lösung.</p>
<blockquote>
<p>Stell dir ansonsten ja auch mal vor, dass du etwas m_MaxCount nennen willst.. Dann hast du schon das nächste Problem..</p>
</blockquote>
<p>Wieso sollte DAS denn bitte ein Problem machen? Ich kenne zumindest kein Header-File welches &quot;m_MaxCount&quot; als Makro definiert.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1614947</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1614947</guid><dc:creator><![CDATA[hustbaer]]></dc:creator><pubDate>Fri, 14 Nov 2008 21:37:25 GMT</pubDate></item><item><title><![CDATA[Reply to Wie Makro ignorieren? on Fri, 14 Nov 2008 23:42:20 GMT]]></title><description><![CDATA[<p>hustbaer schrieb:</p>
<blockquote>
<p>Was an der &quot;NO_MACRO&quot; Variante schöner sein soll weiss ich nicht.</p>
</blockquote>
<p>Ist wohl wieder so ein Fall von Geschmacksache. Ich finde da sieht man gleich, was man erreichen wollte. Die Klammerung sieht einfach nur kryptisch aus und man versteht nicht auf Anhieb, was dort passiert. Klar, kann man noch ein Kommentar hinsetzen, sollte man wohl sogar <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>Grüssli</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1614965</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1614965</guid><dc:creator><![CDATA[Dravere]]></dc:creator><pubDate>Fri, 14 Nov 2008 23:42:20 GMT</pubDate></item><item><title><![CDATA[Reply to Wie Makro ignorieren? on Wed, 17 Dec 2008 10:25:06 GMT]]></title><description><![CDATA[<p>hustbaer schrieb:</p>
<blockquote>
<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/9752">@Dravere</a>:<br />
Da max ein function-style Makro ist kann man es wie schon erwähnt wurde genausogut klammern. Was an der &quot;NO_MACRO&quot; Variante schöner sein soll weiss ich nicht.</p>
</blockquote>
<p><img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/26a0.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--warning"
      title=":warning:"
      alt="⚠"
    /></p>
<p>Wie ich gerade gelernt habe kann es offenbar einen subtilen Unterschied geben: die benutzung von <strong>ADL</strong>.<br />
Die Klammer Lösung (std::min)(a,b) wählt natürlich immer das &quot;min&quot; aus dem Namespace std. Will man aber dass der Compiler selbst entscheidet aus welchem Namespace das &quot;min&quot; kommen soll, ist die &quot;NO_MACRO&quot; Lösung die richtige Wahl.</p>
<p>Zu dem ganze Kontext gibt es in boost folgende Empfehlung</p>
<p>siehe <a href="http://www.boost.org/development/requirements.html" rel="nofollow">http://www.boost.org/development/requirements.html</a></p>
<blockquote>
<p>Make sure your code compiles in the presence of the min() and max() macros. Some platform headers define min() and max() macros which cause some common C++ constructs to fail to compile. Some simple tricks can protect your code from inappropriate macro substitution:</p>
<p>If you want to call std::min() or std::max():</p>
<p>If you do not require argument-dependent look-up, use (std::min)(a,b).<br />
If you do require argument-dependent look-up, you should:</p>
<p>#include &lt;boost/config.hpp&gt;<br />
Use BOOST_USING_STD_MIN(); to bring std::min() into the current scope.<br />
Use min BOOST_PREVENT_MACRO_SUBSTITUTION (a,b); to make an argument-dependent call to min(a,b).</p>
<p>If you want to call std::numeric_limits&lt;int&gt;::max(), use (std::numeric_limits&lt;int&gt;::max)() instead.<br />
If you want to call a min() or max() member function, instead to doing obj.min(), use (obj.min)().<br />
If you want to declare or define a function or a member function named min or max, then you must use the BOOST_PREVENT_MACRO_SUBSTITUTION macro. Instead of writing int min() { return 0; } you should write int min BOOST_PREVENT_MACRO_SUBSTITUTION () { return 0; } This is true regardless if the function is a free (namespace scope) function, a member function or a static member function, and it applies for the function declaration as well as for the function definition.</p>
</blockquote>
<p>und natürlich ist es am einfachsten, schönsten und besten wenn man die Makros min und max vermeiden kann.</p>
<p>Grüsse</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1631716</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1631716</guid><dc:creator><![CDATA[Drehleiter]]></dc:creator><pubDate>Wed, 17 Dec 2008 10:25:06 GMT</pubDate></item><item><title><![CDATA[Reply to Wie Makro ignorieren? on Wed, 17 Dec 2008 10:35:57 GMT]]></title><description><![CDATA[<p>hustbaer schrieb:</p>
<blockquote>
<p>Wenn man Code schreibt der von anderen Programmen inkludiert werden muss (z.b. weil Templates definiert werden)</p>
</blockquote>
<p>...kann man NOMINMAX projektweit setzen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1631724</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1631724</guid><dc:creator><![CDATA[LordJaxom]]></dc:creator><pubDate>Wed, 17 Dec 2008 10:35:57 GMT</pubDate></item><item><title><![CDATA[Reply to Wie Makro ignorieren? on Wed, 17 Dec 2008 10:45:21 GMT]]></title><description><![CDATA[<p>Seikilos schrieb:</p>
<blockquote>
<p>Ah, danke für die schnelle Hilfe. Aber so ist es im Projekt komplett weg, was ungünstig sein könnte.<br />
gibt es so etwas auch temporär ?</p>
</blockquote>
<p>Naja, könnte man das Makro nicht &quot;suspenden&quot;:</p>
<pre><code class="language-cpp">#ifdef max
#define MAX_BACKUP max
#undef max

// .. mein Code

#ifdef MAX_BACKUP
#define max MAX_BACKUP
</code></pre>
<p>ist zwar auch nicht schön (ich bin sowieso kein &quot;Makrofreund&quot;) , sollte aber funktionieren, oder?</p>
<p>Gruß,</p>
<p>Simon2.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1631732</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1631732</guid><dc:creator><![CDATA[Simon2]]></dc:creator><pubDate>Wed, 17 Dec 2008 10:45:21 GMT</pubDate></item><item><title><![CDATA[Reply to Wie Makro ignorieren? on Wed, 17 Dec 2008 13:53:15 GMT]]></title><description><![CDATA[<p>Bei Visual Studio geht sowas mit #pragma push_macro(&quot;macroname&quot;) und #pragma pop_macro.<br />
<a href="http://msdn.microsoft.com/en-us/library/2bs04eza(VS.71).aspx" rel="nofollow">http://msdn.microsoft.com/en-us/library/2bs04eza(VS.71).aspx</a><br />
rya.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1631846</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1631846</guid><dc:creator><![CDATA[scorcher24@arbyte]]></dc:creator><pubDate>Wed, 17 Dec 2008 13:53:15 GMT</pubDate></item><item><title><![CDATA[Reply to Wie Makro ignorieren? on Wed, 17 Dec 2008 14:41:42 GMT]]></title><description><![CDATA[<p>Simon2 schrieb:</p>
<blockquote>
<p>ist zwar auch nicht schön (ich bin sowieso kein &quot;Makrofreund&quot;) , sollte aber funktionieren, oder?</p>
</blockquote>
<p>Nein, die gleiche Frage stellte schon pumuckl im anderen (von mir verlinkten) Thread. <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>
<p>Das Problem besteht darin, dass Makros nur textuell ersetzt werden.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1631879</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1631879</guid><dc:creator><![CDATA[Nexus]]></dc:creator><pubDate>Wed, 17 Dec 2008 14:41:42 GMT</pubDate></item><item><title><![CDATA[Reply to Wie Makro ignorieren? on Wed, 17 Dec 2008 15:25:28 GMT]]></title><description><![CDATA[<p>Nexus schrieb:</p>
<blockquote>
<p>...Das Problem besteht darin, dass Makros nur textuell ersetzt werden.</p>
</blockquote>
<p><img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f4a1.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--light_bulb"
      title=":bulb:"
      alt="💡"
    /> *vor-die-stirn-klatsch*</p>
<p>Ich hatte sowas mal mit reinen &quot;#ifdef-Schaltern&quot; machen müssen und das klappt naürlich ....</p>
<p>*schubber-und-schnell-vergess*</p>
<p>Gruß,</p>
<p>Simon2.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1631903</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1631903</guid><dc:creator><![CDATA[Simon2]]></dc:creator><pubDate>Wed, 17 Dec 2008 15:25:28 GMT</pubDate></item></channel></rss>