<?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[Lambda capture clause]]></title><description><![CDATA[<p>Hi,<br />
kann man nicht einfach [&amp;] schreiben, anstatt die Variablen aufzulisten? Oder ist das weniger performant (compile/runtime?)?.</p>
<p>In einer Klasse:</p>
<pre><code>// link, context sind Pointer
auto Failed = [this, link, context]()
{
	Disconnect(link);
	link-&gt;Release();

	delete context;
};
</code></pre>
<p>Einfacher wäre halt [&amp;], und hätte in diesem Fall denselben Effekt.</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/325608/lambda-capture-clause</link><generator>RSS for Node</generator><lastBuildDate>Sun, 12 Jul 2026 05:04:10 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/325608.rss" rel="self" type="application/rss+xml"/><pubDate>Sat, 10 May 2014 06:52:23 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Lambda capture clause on Sat, 10 May 2014 06:52:23 GMT]]></title><description><![CDATA[<p>Hi,<br />
kann man nicht einfach [&amp;] schreiben, anstatt die Variablen aufzulisten? Oder ist das weniger performant (compile/runtime?)?.</p>
<p>In einer Klasse:</p>
<pre><code>// link, context sind Pointer
auto Failed = [this, link, context]()
{
	Disconnect(link);
	link-&gt;Release();

	delete context;
};
</code></pre>
<p>Einfacher wäre halt [&amp;], und hätte in diesem Fall denselben Effekt.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2398409</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2398409</guid><dc:creator><![CDATA[loboo]]></dc:creator><pubDate>Sat, 10 May 2014 06:52:23 GMT</pubDate></item><item><title><![CDATA[Reply to Lambda capture clause on Sat, 10 May 2014 07:09:48 GMT]]></title><description><![CDATA[<p>Einfacher ist das schon, kannst du ja auch machen.<br />
Ich denke nicht, dass das Einfluss auf die Performance hat, dennd er Compiler wird sich nur die Daten in den Lambda-Ausdruck holen, die dort auch gebraucht werden.</p>
<p>Das Problem ist (nur), dass du auch aus versehen Daten ändern könntest, die du nicht ändern willst.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2398412</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2398412</guid><dc:creator><![CDATA[Skym0sh0]]></dc:creator><pubDate>Sat, 10 May 2014 07:09:48 GMT</pubDate></item><item><title><![CDATA[Reply to Lambda capture clause on Sat, 10 May 2014 07:41:41 GMT]]></title><description><![CDATA[<p>[&amp;] würde alles per Referenz fangen, das halte ich aber für Unfug, weils eh schon Zeiger sind. Ich würde [=] machen, wenn ich schreibfaul wäre. Ich mache aber lieber [this, link, context], dann kommen keine Überraschungen, wenn ich mal an der Klasse was ändere.</p>
<p>Zusatzfrage, willste nicht nur [this] fangen und sind mit link und context nur this-&gt;link und this-&gt;context gemeint? Das wäre hübsch.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2398413</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2398413</guid><dc:creator><![CDATA[volkard]]></dc:creator><pubDate>Sat, 10 May 2014 07:41:41 GMT</pubDate></item><item><title><![CDATA[Reply to Lambda capture clause on Sat, 10 May 2014 08:01:35 GMT]]></title><description><![CDATA[<p>Okay, danke.<br />
Ne, in dem Fall sind die Pointer auto.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2398419</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2398419</guid><dc:creator><![CDATA[loboo]]></dc:creator><pubDate>Sat, 10 May 2014 08:01:35 GMT</pubDate></item></channel></rss>