<?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[Include Wrapping]]></title><description><![CDATA[<p>Hallo!</p>
<p>Warum soll folgendes die Compilegeschwindigkeit erhöhen?</p>
<pre><code class="language-cpp">#ifndef myHeader_h__
#include &quot;myHeader.h&quot;
#endif
</code></pre>
<p>Danke schonmal!</p>
<p>Niels</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/247070/include-wrapping</link><generator>RSS for Node</generator><lastBuildDate>Thu, 17 Sep 2026 18:23:36 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/247070.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 05 Aug 2009 15:50:21 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Include Wrapping on Wed, 05 Aug 2009 15:50:21 GMT]]></title><description><![CDATA[<p>Hallo!</p>
<p>Warum soll folgendes die Compilegeschwindigkeit erhöhen?</p>
<pre><code class="language-cpp">#ifndef myHeader_h__
#include &quot;myHeader.h&quot;
#endif
</code></pre>
<p>Danke schonmal!</p>
<p>Niels</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1755862</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1755862</guid><dc:creator><![CDATA[nielsp]]></dc:creator><pubDate>Wed, 05 Aug 2009 15:50:21 GMT</pubDate></item><item><title><![CDATA[Reply to Include Wrapping on Wed, 05 Aug 2009 15:58:10 GMT]]></title><description><![CDATA[<p>Weil der Header kein zweites mal (unnötigerweise) included wird.. Allerdings muss myHeader_h__ auch gesetzt werden.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1755865</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1755865</guid><dc:creator><![CDATA[drakon]]></dc:creator><pubDate>Wed, 05 Aug 2009 15:58:10 GMT</pubDate></item><item><title><![CDATA[Reply to Include Wrapping on Wed, 05 Aug 2009 15:58:37 GMT]]></title><description><![CDATA[<p>nielsp schrieb:</p>
<blockquote>
<p>Hallo!</p>
<p>Warum soll folgendes die Compilegeschwindigkeit erhöhen?</p>
<pre><code class="language-cpp">#ifndef myHeader_h__
#include &quot;myHeader.h&quot;
#endif
</code></pre>
</blockquote>
<p>Solch Code kenne ich nur noch aus alten Uhrzeiten. Includeguards (die tatsächlich u.a. die Compilegeschwindigkeit erhöhen) setzt man eigentlich in der betroffenen Datei und nicht um das Include herum. Ich sehe obiges eher als Unsitte an.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1755866</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1755866</guid><dc:creator><![CDATA[asc]]></dc:creator><pubDate>Wed, 05 Aug 2009 15:58:37 GMT</pubDate></item><item><title><![CDATA[Reply to Include Wrapping on Wed, 05 Aug 2009 16:02:19 GMT]]></title><description><![CDATA[<blockquote>
<p>Ich sehe obiges eher als Unsitte an.</p>
</blockquote>
<p>Hmm. Ich sehe das eigentlich nicht als direkten Headerguard an. Es kann ja durchaus auch Sinn machen, wenn im Header selbst bereits Gurads vorhanden sind. Der Präprozessor muss da die Datei gar nicht erst öffnen. Könnte somit ja eigentlich als Standardkonformes <code>pragma once</code> gelten. Ich weiss nicht, wie viel es wirklich ausmacht, aber ganz ohne Wirkung wird es nicht sein.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1755869</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1755869</guid><dc:creator><![CDATA[drakon]]></dc:creator><pubDate>Wed, 05 Aug 2009 16:02:19 GMT</pubDate></item><item><title><![CDATA[Reply to Include Wrapping on Wed, 05 Aug 2009 17:11:06 GMT]]></title><description><![CDATA[<p>Also zumindest der gcc behandelt include guards in Headerdateien seit geraumer Zeit genauso wie pragma once. Das heißt er liest dann tatsächlich nur die ersten paar Zeilen, anstatt erst die ganze Datei zu Inkludieren und dann alles zu verwerfen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1755901</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1755901</guid><dc:creator><![CDATA[SeppJ]]></dc:creator><pubDate>Wed, 05 Aug 2009 17:11:06 GMT</pubDate></item><item><title><![CDATA[Reply to Include Wrapping on Wed, 05 Aug 2009 17:20:34 GMT]]></title><description><![CDATA[<p>SeppJ schrieb:</p>
<blockquote>
<p>Also zumindest der gcc behandelt include guards in Headerdateien seit geraumer Zeit genauso wie pragma once. Das heißt er liest dann tatsächlich nur die ersten paar Zeilen, anstatt erst die ganze Datei zu Inkludieren und dann alles zu verwerfen.</p>
</blockquote>
<p><code>pragma once</code> macht aber unter Windows etwas klein wenig anderes:</p>
<p><a href="http://msdn.microsoft.com/en-us/library/4141z1cx.aspx" rel="nofollow">http://msdn.microsoft.com/en-us/library/4141z1cx.aspx</a></p>
<p>Er öffnet die Datei gar nicht erst erneut. Das macht ja auch was aus. Und mit einem solchen <code>#define</code> vor dem includen in eine andere Datei simuliert man ja das auch. Die Frage ist nur, was teurer ist. Das <code>ifndef</code> oder das schnelle öffnen und schauen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1755908</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1755908</guid><dc:creator><![CDATA[drakon]]></dc:creator><pubDate>Wed, 05 Aug 2009 17:20:34 GMT</pubDate></item><item><title><![CDATA[Reply to Include Wrapping on Wed, 05 Aug 2009 18:08:59 GMT]]></title><description><![CDATA[<p>Ich hab's nochmal nachgelesen. Mittlerweile ist es sogar so, dass Dateien mit Include guards beim gcc gar nicht erst ein zweites Mal geöffnet werden, so wie beim MS Compiler das pragma once. Da das Feature schon eine Weile drin ist, und Microsoft auch keine schlechten Compiler schreibt, würde ich darauf wetten, dass deren Compiler das auch kann.</p>
<p>edit: Hier noch zum Selbstlesen: <a href="http://gcc.gnu.org/onlinedocs/cppinternals/Guard-Macros.html" rel="nofollow">http://gcc.gnu.org/onlinedocs/cppinternals/Guard-Macros.html</a></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1755925</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1755925</guid><dc:creator><![CDATA[SeppJ]]></dc:creator><pubDate>Wed, 05 Aug 2009 18:08:59 GMT</pubDate></item><item><title><![CDATA[Reply to Include Wrapping on Wed, 05 Aug 2009 19:10:27 GMT]]></title><description><![CDATA[<p>Kann ich mir auch gut vorstellen, dass das auch bei MS so ist. Allerdings habe ich ja gesagt, dass ich das als Standardkonformes <code>pramga once</code> sehe. Ob es Heutzutage noch nötig ist, oder nicht sei dahingestellt. <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/1755956</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1755956</guid><dc:creator><![CDATA[drakon]]></dc:creator><pubDate>Wed, 05 Aug 2009 19:10:27 GMT</pubDate></item></channel></rss>