<?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[Frage zu inline]]></title><description><![CDATA[<p>Hallo.<br />
Der inline Spezifizierer für Funktionen sorgt ja dafür, dass ein Aufruf durch ein Einfügen des Codes ersetzt wird. Meine Frage ist jetzt: Welcher Code? Der C++ Quellcode, oder der &quot;Code&quot; in Objektdateien o.ä.</p>
<p>Warum ich das wissen will: Ich möchte wissen, ob folgendes funktioniert:</p>
<pre><code class="language-cpp">// Datei A
class T{
    inline void f();
};
</code></pre>
<pre><code class="language-cpp">// Datei B
#include &quot;A&quot;
void T::(){}
</code></pre>
<p>beim kompilieren sorgt das für keinen fehler. Aber wird ein aufruf dann auch wirklich (im binary) ersetzt sein?</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/202119/frage-zu-inline</link><generator>RSS for Node</generator><lastBuildDate>Tue, 06 Oct 2026 13:07:10 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/202119.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 07 Jan 2008 19:07:53 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Frage zu inline on Mon, 07 Jan 2008 19:07:53 GMT]]></title><description><![CDATA[<p>Hallo.<br />
Der inline Spezifizierer für Funktionen sorgt ja dafür, dass ein Aufruf durch ein Einfügen des Codes ersetzt wird. Meine Frage ist jetzt: Welcher Code? Der C++ Quellcode, oder der &quot;Code&quot; in Objektdateien o.ä.</p>
<p>Warum ich das wissen will: Ich möchte wissen, ob folgendes funktioniert:</p>
<pre><code class="language-cpp">// Datei A
class T{
    inline void f();
};
</code></pre>
<pre><code class="language-cpp">// Datei B
#include &quot;A&quot;
void T::(){}
</code></pre>
<p>beim kompilieren sorgt das für keinen fehler. Aber wird ein aufruf dann auch wirklich (im binary) ersetzt sein?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1432640</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1432640</guid><dc:creator><![CDATA[piXelshooter]]></dc:creator><pubDate>Mon, 07 Jan 2008 19:07:53 GMT</pubDate></item><item><title><![CDATA[Reply to Frage zu inline on Mon, 07 Jan 2008 19:35:04 GMT]]></title><description><![CDATA[<p>piXelshooter schrieb:</p>
<blockquote>
<p>Hallo.<br />
Der inline Spezifizierer für Funktionen sorgt ja dafür, dass ein Aufruf durch ein Einfügen des Codes ersetzt wird.</p>
</blockquote>
<p>Jein. <a href="http://www.c-plusplus.net/forum/viewtopic-var-t-is-105893.html" rel="nofollow">http://www.c-plusplus.net/forum/viewtopic-var-t-is-105893.html</a></p>
<blockquote>
<p>Meine Frage ist jetzt: Welcher Code? Der C++ Quellcode, oder der &quot;Code&quot; in Objektdateien o.ä.</p>
</blockquote>
<p>Macht das einen Unterschied? Das Verhalten des Programms darf sich nicht verändern.</p>
<blockquote>
<p>Warum ich das wissen will: Ich möchte wissen, ob folgendes funktioniert:</p>
<pre><code class="language-cpp">// Datei A
class T{
    inline void f();
};
</code></pre>
<pre><code class="language-cpp">// Datei B
#include &quot;A&quot;
void T::(){}
</code></pre>
<p>beim kompilieren sorgt das für keinen fehler. Aber wird ein aufruf dann auch wirklich (im binary) ersetzt sein?</p>
</blockquote>
<p>Ja, aber nur wenn du f aus Datei B heraus aufrufst. Wenn du irgendwo nur A.h einbindest, ist die Funktionsdefinition nicht sichtbar, kann also auch nicht eingefügt werden.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1432650</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1432650</guid><dc:creator><![CDATA[Bashar]]></dc:creator><pubDate>Mon, 07 Jan 2008 19:35:04 GMT</pubDate></item><item><title><![CDATA[Reply to Frage zu inline on Mon, 07 Jan 2008 20:59:52 GMT]]></title><description><![CDATA[<p>Bashar schrieb:</p>
<blockquote>
<blockquote>
<p>Meine Frage ist jetzt: Welcher Code? Der C++ Quellcode, oder der &quot;Code&quot; in Objektdateien o.ä.</p>
</blockquote>
<p>Macht das einen Unterschied? Das Verhalten des Programms darf sich nicht verändern.</p>
</blockquote>
<p>Ja. Denn Binärcode wird dann ja eh irgendwie &quot;zusammengepappt&quot;, die quellcodes stehen sich aber offensichtlich nicht unbedingt zur verfügung</p>
<blockquote>
<p>Warum ich das wissen will: Ich möchte wissen, ob folgendes funktioniert:</p>
<pre><code class="language-cpp">// Datei A
class T{
    inline void f();
};
</code></pre>
<pre><code class="language-cpp">// Datei B
#include &quot;A&quot;
void T::f(){}
</code></pre>
<p>beim kompilieren sorgt das für keinen fehler. Aber wird ein aufruf dann auch wirklich (im binary) ersetzt sein?</p>
</blockquote>
<p>Ja, aber nur wenn du f aus Datei B heraus aufrufst. Wenn du irgendwo nur A.h einbindest, ist die Funktionsdefinition nicht sichtbar, kann also auch nicht eingefügt werden.[/quote]<br />
ok danke das wollte ich wissen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1432706</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1432706</guid><dc:creator><![CDATA[piXelshooter]]></dc:creator><pubDate>Mon, 07 Jan 2008 20:59:52 GMT</pubDate></item></channel></rss>