<?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[Methodenvorlage]]></title><description><![CDATA[<p>Hallo zusammen,</p>
<p>ich stehe gerade etwas auf dem Schlauch.<br />
Ich habe einen Haufen an Methoden welche ständig im Team um weitere Methoden erweitert werden. Für jede Methode gibt es einen &quot;Prolog&quot; und einen &quot;Epilog&quot;.</p>
<p>sieht irgendwie so aus:</p>
<p>void bla(bla bla, ....)<br />
{<br />
//Jede Menge Zeugs was am Anfang passiert(Prolog)</p>
<p>// Hier kommt der übliche Code rein</p>
<p>//Jede Menge Zeug was am Ende passiert(Epilog)<br />
}</p>
<p>Wie kann ich in C++ so eine Art Vorlage erstellen?</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/338072/methodenvorlage</link><generator>RSS for Node</generator><lastBuildDate>Wed, 15 Apr 2026 08:59:15 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/338072.rss" rel="self" type="application/rss+xml"/><pubDate>Sun, 22 May 2016 18:46:06 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Methodenvorlage on Sun, 22 May 2016 18:46:06 GMT]]></title><description><![CDATA[<p>Hallo zusammen,</p>
<p>ich stehe gerade etwas auf dem Schlauch.<br />
Ich habe einen Haufen an Methoden welche ständig im Team um weitere Methoden erweitert werden. Für jede Methode gibt es einen &quot;Prolog&quot; und einen &quot;Epilog&quot;.</p>
<p>sieht irgendwie so aus:</p>
<p>void bla(bla bla, ....)<br />
{<br />
//Jede Menge Zeugs was am Anfang passiert(Prolog)</p>
<p>// Hier kommt der übliche Code rein</p>
<p>//Jede Menge Zeug was am Ende passiert(Epilog)<br />
}</p>
<p>Wie kann ich in C++ so eine Art Vorlage erstellen?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2496580</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2496580</guid><dc:creator><![CDATA[secondsun]]></dc:creator><pubDate>Sun, 22 May 2016 18:46:06 GMT</pubDate></item><item><title><![CDATA[Reply to Methodenvorlage on Sun, 22 May 2016 19:35:35 GMT]]></title><description><![CDATA[<p>Das klingt so als wäre der Prolog und Epilog einfach nur copy&amp;paste und somit ohnehin doppelter code der eigentlich in eigene Funktionen gehört?</p>
<p>Was genau passiert denn eigentlich bei deinem Prolog und Epilog das der für jede einzellne Funktion notwendig ist?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2496582</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2496582</guid><dc:creator><![CDATA[Xebov]]></dc:creator><pubDate>Sun, 22 May 2016 19:35:35 GMT</pubDate></item><item><title><![CDATA[Reply to Methodenvorlage on Sun, 22 May 2016 19:40:22 GMT]]></title><description><![CDATA[<p>Berechtigte Frage. Es wird ein bisschen was mit protokolliert, Ausführungszeiten erfasst usw.<br />
Ich weiß den alternativen Weg zu schätzen aber das war nicht meine eigentliche Frage;-)<br />
Wäre super wenn man bei der Lösung des Problems bleiben könnte</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2496583</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2496583</guid><dc:creator><![CDATA[secondsun]]></dc:creator><pubDate>Sun, 22 May 2016 19:40:22 GMT</pubDate></item><item><title><![CDATA[Reply to Methodenvorlage on Sun, 22 May 2016 20:08:16 GMT]]></title><description><![CDATA[<pre><code>template&lt;typename Function&gt; boilerplate_caller(Function f)
{
  // Prolog
  f();
  // Epilog
}
</code></pre>
<p>Damit dann</p>
<pre><code>void user_interface(int a, int b, int c)
{
  boilerplate_caller(std::bind(actual_function, a, b, c));
}
</code></pre>
<p>Gibt auch noch andere Methoden, aber so hast du überhaupt mal einen Ansatz.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2496584</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2496584</guid><dc:creator><![CDATA[SeppJ]]></dc:creator><pubDate>Sun, 22 May 2016 20:08:16 GMT</pubDate></item><item><title><![CDATA[Reply to Methodenvorlage on Sun, 22 May 2016 20:18:12 GMT]]></title><description><![CDATA[<p>Noch ein Ansatz.</p>
<pre><code class="language-cpp">struct whatever{
  whatever() {
    // prolog
  }
  ~whatever() {
    // epilog
  }
};

void whocares() {
  whatever _; // nicht unuebliche benamsung von objekten, die man eh nicht braucht...
  f();
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2496586</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2496586</guid><dc:creator><![CDATA[Furble Wurble]]></dc:creator><pubDate>Sun, 22 May 2016 20:18:12 GMT</pubDate></item><item><title><![CDATA[Reply to Methodenvorlage on Sun, 22 May 2016 20:28:34 GMT]]></title><description><![CDATA[<p>Danke schon mal für die Vorschläge aber zum letzten habe ich eine Frage.</p>
<p>Ich komme ursprünglich aus der .NET Welt und stelle mir nun die Frage, ob es sinnvoll ist, gerade bei Zeitmessungen, sich auf den Destruktor zu verlassen.<br />
Ich weiß gerade nicht wie es bei C++ ist. Wird der Destruktor direkt aufgerufen(ich muss ihn explizit aufrufen) oder wird er irgendwann mal aufgerufen wenn ich den expliziten Aufruf vergesse?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2496587</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2496587</guid><dc:creator><![CDATA[secondsun]]></dc:creator><pubDate>Sun, 22 May 2016 20:28:34 GMT</pubDate></item><item><title><![CDATA[Reply to Methodenvorlage on Sun, 22 May 2016 20:34:20 GMT]]></title><description><![CDATA[<p>Ja, in C++ wird der Destruktor deterministisch dann aufgerufen, wenn ein Object out-of-scope geht.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2496588</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2496588</guid><dc:creator><![CDATA[SG1]]></dc:creator><pubDate>Sun, 22 May 2016 20:34:20 GMT</pubDate></item><item><title><![CDATA[Reply to Methodenvorlage on Sun, 22 May 2016 20:51:25 GMT]]></title><description><![CDATA[<p>secondsun schrieb:</p>
<blockquote>
<p>Wird der Destruktor direkt aufgerufen(ich muss ihn explizit aufrufen) oder wird er irgendwann mal aufgerufen wenn ich den expliziten Aufruf vergesse?</p>
</blockquote>
<p>Du solltest den Destruktor auf keinen Fall selbst aufrufen. Danach wäre das Objekt nämlich bereits zerstört. Es dann nochmal zu zerstören wäre ein Fehler. (Und da lokale Objekte automatisch zerstört werden, würde es dann eben 2x zerstört, was wie gesagt ein Fehler wäre.)</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2496591</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2496591</guid><dc:creator><![CDATA[hustbaer]]></dc:creator><pubDate>Sun, 22 May 2016 20:51:25 GMT</pubDate></item></channel></rss>