<?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[Map mit Template Typen]]></title><description><![CDATA[<p>Hallo,<br />
ich habe eine Klasse:</p>
<pre><code>template &lt;typename Resource, typename Identifier&gt;
class ResourceHolder
{
    private:
        std::map&lt;Identifier, Resource*&gt;	mResourceMap;
};
</code></pre>
<p>Jetzt will ich, dass im destructor der Klasse der Speicher der Pointer aus mResourceMap wieder freigegeben wird.<br />
Das würde ja eigentlich auch ganz einfach gehen, nur sobald ich zwei templates als Key und dem zugehörigen Objekt benutze, hat die Map keine Member mehr, mit denen ich ihrgendwie auf die zugreifen könnte...<br />
<a href="http://s7.directupload.net/images/130921/dn7fxntz.png" rel="nofollow">http://s7.directupload.net/images/130921/dn7fxntz.png</a></p>
]]></description><link>https://www.c-plusplus.net/forum/topic/320248/map-mit-template-typen</link><generator>RSS for Node</generator><lastBuildDate>Fri, 24 Jul 2026 05:54:35 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/320248.rss" rel="self" type="application/rss+xml"/><pubDate>Sat, 21 Sep 2013 15:33:48 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Map mit Template Typen on Sat, 21 Sep 2013 15:33:48 GMT]]></title><description><![CDATA[<p>Hallo,<br />
ich habe eine Klasse:</p>
<pre><code>template &lt;typename Resource, typename Identifier&gt;
class ResourceHolder
{
    private:
        std::map&lt;Identifier, Resource*&gt;	mResourceMap;
};
</code></pre>
<p>Jetzt will ich, dass im destructor der Klasse der Speicher der Pointer aus mResourceMap wieder freigegeben wird.<br />
Das würde ja eigentlich auch ganz einfach gehen, nur sobald ich zwei templates als Key und dem zugehörigen Objekt benutze, hat die Map keine Member mehr, mit denen ich ihrgendwie auf die zugreifen könnte...<br />
<a href="http://s7.directupload.net/images/130921/dn7fxntz.png" rel="nofollow">http://s7.directupload.net/images/130921/dn7fxntz.png</a></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2354378</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2354378</guid><dc:creator><![CDATA[DuffCola]]></dc:creator><pubDate>Sat, 21 Sep 2013 15:33:48 GMT</pubDate></item><item><title><![CDATA[Reply to Map mit Template Typen on Sat, 21 Sep 2013 15:35:44 GMT]]></title><description><![CDATA[<p>Eine map hat immer die selben Member.<br />
Nur weil IntelliSense die nicht erkennt heißt das nichts.<br />
Machs einfach genau so, wie du es sonst machen würdest.<br />
Oder verwende einen Smartpointer, der löscht den Speicher von selbst.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2354379</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2354379</guid><dc:creator><![CDATA[Nathan]]></dc:creator><pubDate>Sat, 21 Sep 2013 15:35:44 GMT</pubDate></item><item><title><![CDATA[Reply to Map mit Template Typen on Sat, 21 Sep 2013 15:39:11 GMT]]></title><description><![CDATA[<p>Ich hab das Buch &quot;SFML Game Development&quot; auch. Dort nehmen sie unique_ptr, warum machst du es nicht gleich?</p>
<p>Hier ist der Source-Code dazu:<br />
<a href="https://github.com/LaurentGomila/SFML-Game-Development-Book/blob/master/02_Resources/Include/Book/ResourceHolder.hpp" rel="nofollow">https://github.com/LaurentGomila/SFML-Game-Development-Book/blob/master/02_Resources/Include/Book/ResourceHolder.hpp</a></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2354381</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2354381</guid><dc:creator><![CDATA[SFML-User]]></dc:creator><pubDate>Sat, 21 Sep 2013 15:39:11 GMT</pubDate></item><item><title><![CDATA[Reply to Map mit Template Typen on Sat, 21 Sep 2013 15:45:15 GMT]]></title><description><![CDATA[<p>Alternativ gibt es natürlich auch noch die sog. <a href="http://www.boost.org/doc/libs/1_54_0/libs/ptr_container/doc/ptr_map.html" rel="nofollow">Boost Pointer Container</a>.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2354383</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2354383</guid><dc:creator><![CDATA[Sone]]></dc:creator><pubDate>Sat, 21 Sep 2013 15:45:15 GMT</pubDate></item><item><title><![CDATA[Reply to Map mit Template Typen on Sat, 21 Sep 2013 16:01:01 GMT]]></title><description><![CDATA[<p>Ja ich wollte mich jetzt nicht von dem unique_ptr abhängig machen.<br />
Das klingt jetzt vielleicht doof, aber ich mag es nicht mit dem zu arbeiten.<br />
Ich kümmer mich lieber selbst um den Speicher.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2354387</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2354387</guid><dc:creator><![CDATA[DuffCola]]></dc:creator><pubDate>Sat, 21 Sep 2013 16:01:01 GMT</pubDate></item><item><title><![CDATA[Reply to Map mit Template Typen on Sat, 21 Sep 2013 16:06:32 GMT]]></title><description><![CDATA[<blockquote>
<p>Ja ich wollte mich jetzt nicht von dem unique_ptr abhängig machen.</p>
</blockquote>
<p>Was bitte soll das heißen?</p>
<blockquote>
<p>Das klingt jetzt vielleicht doof, aber ich mag es nicht mit dem zu arbeiten.</p>
</blockquote>
<p>Das klingt tatsächlich doof, den der <code>unique_ptr</code> ist eigentlich Pflicht in modernem C++.</p>
<blockquote>
<p>Ich kümmer mich lieber selbst um den Speicher.</p>
</blockquote>
<p>Hier ist das vielleicht noch irgendwie in Ordnung, aber glaub mir, diese Devise solltest du ganz schnell vergessen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2354388</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2354388</guid><dc:creator><![CDATA[Sone]]></dc:creator><pubDate>Sat, 21 Sep 2013 16:06:32 GMT</pubDate></item><item><title><![CDATA[Reply to Map mit Template Typen on Sat, 21 Sep 2013 16:27:57 GMT]]></title><description><![CDATA[<p>DuffCola schrieb:</p>
<blockquote>
<p>Das klingt jetzt vielleicht doof, aber ich mag es nicht mit dem zu arbeiten.</p>
</blockquote>
<p>Nein, das klingt ganz und gar nicht doof, das <strong>ist</strong> doof! Benutze RAII wann immer es geht!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2354395</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2354395</guid><dc:creator><![CDATA[manni66]]></dc:creator><pubDate>Sat, 21 Sep 2013 16:27:57 GMT</pubDate></item><item><title><![CDATA[Reply to Map mit Template Typen on Sat, 21 Sep 2013 16:32:18 GMT]]></title><description><![CDATA[<p>Wahrscheinlich meint er, weil er rohe Pointer benutzt holt er Geschwindigkeit raus.<br />
Aber er weis nicht, was er macht daher...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2354398</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2354398</guid><dc:creator><![CDATA[Skym0sh0]]></dc:creator><pubDate>Sat, 21 Sep 2013 16:32:18 GMT</pubDate></item><item><title><![CDATA[Reply to Map mit Template Typen on Sat, 21 Sep 2013 17:33:00 GMT]]></title><description><![CDATA[<blockquote>
<p>Wahrscheinlich meint er, weil er rohe Pointer benutzt holt er Geschwindigkeit raus.</p>
</blockquote>
<p>Prinzipiell verursacht ein <code>unique_ptr</code> keinen Overhead. Er hat dieselbe Größe wie der Zeiger, <s>hält keine anderen Member</s>*, und alle Operationen die er implizit erledigt, muss man auch selbst erledigen.</p>
<p>Ich habe es nicht getestet, bin mir aber sehr sicher dass der Overhead absolut minimal sein dürfte.</p>
<p>*: Nein, es muss ja technisch gesehen noch den Deleter halten. S. Seite 2.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2354399</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2354399</guid><dc:creator><![CDATA[Sone]]></dc:creator><pubDate>Sat, 21 Sep 2013 17:33:00 GMT</pubDate></item><item><title><![CDATA[Reply to Map mit Template Typen on Sat, 21 Sep 2013 17:03:18 GMT]]></title><description><![CDATA[<p>std::unique_ptr ist genauso ein Teil der Standardbibliothek wie std::map, sogar deutlich leichter zu implementieren. Also wenn du unique_ptr nicht willst weil dein Spiel auch auf einer Armbanduhr laufen soll, dann bitte auch std::map selbst implementieren. <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/2354409</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2354409</guid><dc:creator><![CDATA[cooky451]]></dc:creator><pubDate>Sat, 21 Sep 2013 17:03:18 GMT</pubDate></item><item><title><![CDATA[Reply to Map mit Template Typen on Sat, 21 Sep 2013 17:12:21 GMT]]></title><description><![CDATA[<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/29461">@DuffCola</a> (aber auch Sone und cooky451): unique_ptr hat nicht minimalen Overhead, sondern <strong>rein gar keinen</strong>.</p>
<p>Es ist tatsächlich nicht klug, in C++ Speicher manuell verwalten zu wollen. Du machst dir das Leben nur schwerer, ohne irgendeinen Vorteil davon zu haben. Die Leute in diesem Buch haben sich schon was überlegt <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/2354411</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2354411</guid><dc:creator><![CDATA[unique_winner]]></dc:creator><pubDate>Sat, 21 Sep 2013 17:12:21 GMT</pubDate></item><item><title><![CDATA[Reply to Map mit Template Typen on Sat, 21 Sep 2013 17:16:51 GMT]]></title><description><![CDATA[<p>unique_winner schrieb:</p>
<blockquote>
<p>unique_ptr hat nicht minimalen Overhead, sondern <strong>rein gar keinen</strong>.</p>
</blockquote>
<p>Das bezweifle ich. (Ich weiß es wie gesagt nicht, schätze aber, dass in bestimmten Situationen ein Funktionsaufruf o.ä. Overhead verursachen könnte. )</p>
<blockquote>
<p>und cooky451</p>
</blockquote>
<p>Was hat cooky damit zu tun? Er hat keine Aussage über den Overhead gemacht.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2354413</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2354413</guid><dc:creator><![CDATA[Sone]]></dc:creator><pubDate>Sat, 21 Sep 2013 17:16:51 GMT</pubDate></item><item><title><![CDATA[Reply to Map mit Template Typen on Sat, 21 Sep 2013 17:20:54 GMT]]></title><description><![CDATA[<p>Die Memberfunktionen von unique_ptr werden komplett geinlined, da ist absolut 0 Overhead.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2354420</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2354420</guid><dc:creator><![CDATA[Kellerautomat]]></dc:creator><pubDate>Sat, 21 Sep 2013 17:20:54 GMT</pubDate></item><item><title><![CDATA[Reply to Map mit Template Typen on Sat, 21 Sep 2013 17:33:11 GMT]]></title><description><![CDATA[<p>Nein, tatsächlich muss unique_ptr sogar einen zweiten Member halten (bzw. irgendwie auf ihn Verweisen): Den Deleter.</p>
<blockquote>
<p>Die Memberfunktionen von unique_ptr werden komplett geinlined, da ist absolut 0 Overhead.</p>
</blockquote>
<p>Das wird schon stimmen. Auch die vom Deleter? Sicher, auch die. Dann vielleicht tatsächlich kein Overhead.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2354422</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2354422</guid><dc:creator><![CDATA[Sone]]></dc:creator><pubDate>Sat, 21 Sep 2013 17:33:11 GMT</pubDate></item><item><title><![CDATA[Reply to Map mit Template Typen on Sat, 21 Sep 2013 17:29:55 GMT]]></title><description><![CDATA[<p>Sone schrieb:</p>
<blockquote>
<p>Nein, tatsächlich muss unique_ptr sogar einen zweiten Member halten (bzw. irgendwie auf ihn Verweisen): Den Deleter.</p>
</blockquote>
<p>Was im Falle des hier nur interessanten default_delete&lt;T&gt; keinen Overhead darstellt (da leere Klasse), eine vernünftige Implementierung unterstellt.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2354428</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2354428</guid><dc:creator><![CDATA[camper]]></dc:creator><pubDate>Sat, 21 Sep 2013 17:29:55 GMT</pubDate></item><item><title><![CDATA[Reply to Map mit Template Typen on Sat, 21 Sep 2013 17:30:25 GMT]]></title><description><![CDATA[<p>unique_winner schrieb:</p>
<blockquote>
<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/29461">@DuffCola</a> (aber auch Sone und cooky451): unique_ptr hat nicht minimalen Overhead, sondern <strong>rein gar keinen</strong>.</p>
</blockquote>
<p>Naja, unique_ptr <strong>kann</strong> schon Overhead haben.</p>
<p>Beispielcode:</p>
<pre><code class="language-cpp">namespace {
  template &lt;typename T&gt;
  struct unique_ptr {
    T* data;
    unique_ptr(T* data) : data(data) {}
    unique_ptr(unique_ptr&amp;&amp; o) : data(o.data) { o.data = 0; }
    ~unique_ptr() { delete data; }
  };

  unique_ptr&lt;int&gt; make_unique(int v)
  {
    return unique_ptr&lt;int&gt;(new int(v));
  }

  int* make_ptr(int v)
  {
    return new int(v);
  }
}

void f()
{
  auto i = make_unique(0);
}

void g()
{
  auto i = make_ptr(0);
  delete i;
}
</code></pre>
<p>gcc mit -O2 -fno-elide-constructors liefert:</p>
<p>f:</p>
<pre><code>.cfi_startproc
	pushq	%rbx
	.cfi_def_cfa_offset 16
	.cfi_offset 3, -16
	movl	$4, %edi
	call	_Znwm
	xorl	%edi, %edi
	movl	$0, (%rax)
	movq	%rax, %rbx
	call	_ZdlPv
	xorl	%edi, %edi
	call	_ZdlPv
	movq	%rbx, %rdi
	popq	%rbx
	.cfi_def_cfa_offset 8
	jmp	_ZdlPv
	.cfi_endproc
</code></pre>
<p>g:</p>
<pre><code>.cfi_startproc
	subq	$8, %rsp
	.cfi_def_cfa_offset 16
	movl	$4, %edi
	call	_Znwm
	movl	$0, (%rax)
	movq	%rax, %rdi
	addq	$8, %rsp
	.cfi_def_cfa_offset 8
	jmp	_ZdlPv
	.cfi_endproc
</code></pre>
<p>Bei einem gcc mit -fno-elide-constructors sieht allerdings beides gleich aus.</p>
<p>Sone schrieb:</p>
<blockquote>
<p>Nein, tatsächlich muss unique_ptr sogar einen zweiten Member halten (bzw. irgendwie auf ihn Verweisen): Den Deleter.</p>
</blockquote>
<p>Lern erst einmal C++ bevor du irgendwelche Behauptungen aufstellst. Stichwort EBO.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2354429</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2354429</guid><dc:creator><![CDATA[shared_disadvantage]]></dc:creator><pubDate>Sat, 21 Sep 2013 17:30:25 GMT</pubDate></item><item><title><![CDATA[Reply to Map mit Template Typen on Sat, 21 Sep 2013 17:32:35 GMT]]></title><description><![CDATA[<blockquote>
<p>Lern erst einmal C++ bevor du irgendwelche Behauptungen aufstellst. Stichwort EBO.</p>
</blockquote>
<p>Ich kenne C++. Laut Standard muss <code>unique_ptr</code> einen Deleter halten. Wenn dieser 0 Bytes groß ist, wie bei <code>default_deleter</code> , wird er als Member auch wegoptimiert.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2354430</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2354430</guid><dc:creator><![CDATA[Sone]]></dc:creator><pubDate>Sat, 21 Sep 2013 17:32:35 GMT</pubDate></item><item><title><![CDATA[Reply to Map mit Template Typen on Sat, 21 Sep 2013 17:32:39 GMT]]></title><description><![CDATA[<p>shared_disadvantage schrieb:</p>
<blockquote>
<p>Stichwort EBO.</p>
</blockquote>
<p>Bzw. optimal wäre <code>tuple&lt;T*, Deleter&gt;</code> .</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2354431</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2354431</guid><dc:creator><![CDATA[shared_disadvantage]]></dc:creator><pubDate>Sat, 21 Sep 2013 17:32:39 GMT</pubDate></item><item><title><![CDATA[Reply to Map mit Template Typen on Sat, 21 Sep 2013 17:33:26 GMT]]></title><description><![CDATA[<p>Sone schrieb:</p>
<blockquote>
<blockquote>
<p>Lern erst einmal C++ bevor du irgendwelche Behauptungen aufstellst. Stichwort EBO.</p>
</blockquote>
<p>Ich kenne C++. Laut Standard muss <code>unique_ptr</code> einen Deleter halten. Wenn dieser 0 Bytes groß ist, wie bei <code>default_deleter</code> , wird er als Member auch wegoptimiert.</p>
</blockquote>
<p>Basiswissen C++: Member dürfen nicht wegoptimiert werden.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2354432</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2354432</guid><dc:creator><![CDATA[shared_disadvantage]]></dc:creator><pubDate>Sat, 21 Sep 2013 17:33:26 GMT</pubDate></item><item><title><![CDATA[Reply to Map mit Template Typen on Sat, 21 Sep 2013 17:34:03 GMT]]></title><description><![CDATA[<blockquote>
<p>shared_disadvantage schrieb:</p>
<blockquote>
<p>Stichwort EBO.</p>
</blockquote>
<p>Bzw. optimal wäre <code>tuple&lt;T*, Deleter&gt;</code> .</p>
</blockquote>
<p>Ja, so macht es der GCC.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2354433</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2354433</guid><dc:creator><![CDATA[Sone]]></dc:creator><pubDate>Sat, 21 Sep 2013 17:34:03 GMT</pubDate></item><item><title><![CDATA[Reply to Map mit Template Typen on Sat, 21 Sep 2013 17:36:28 GMT]]></title><description><![CDATA[<p>shared_disadvantage schrieb:</p>
<blockquote>
<p>Sone schrieb:</p>
<blockquote>
<blockquote>
<p>Lern erst einmal C++ bevor du irgendwelche Behauptungen aufstellst. Stichwort EBO.</p>
</blockquote>
<p>Ich kenne C++. Laut Standard muss <code>unique_ptr</code> einen Deleter halten. Wenn dieser 0 Bytes groß ist, wie bei <code>default_deleter</code> , wird er als Member auch wegoptimiert.</p>
</blockquote>
<p>Basiswissen C++: Member dürfen nicht wegoptimiert werden.</p>
</blockquote>
<p>Eine Klasse muss mindestens einen Byte groß sein, da jedes Objekt eine Adresse haben muss.<br />
Und das wird bei Membern nicht wegoptimiert, wenn diese nicht &quot;genutzt&quot; werden? Das heißt, bei Basisklasen, die auch Subobjekte sind, darf man das - hier nicht?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2354436</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2354436</guid><dc:creator><![CDATA[Sone]]></dc:creator><pubDate>Sat, 21 Sep 2013 17:36:28 GMT</pubDate></item><item><title><![CDATA[Reply to Map mit Template Typen on Sat, 21 Sep 2013 17:36:59 GMT]]></title><description><![CDATA[<p>shared_disadvantage schrieb:</p>
<blockquote>
<p>shared_disadvantage schrieb:</p>
<blockquote>
<p>Stichwort EBO.</p>
</blockquote>
<p>Bzw. optimal wäre <code>tuple&lt;T*, Deleter&gt;</code> .</p>
</blockquote>
<p>Kaum. Genau das würde nämlich EBO unterschlagen. Tupelelemente können nicht durch unmittelbare Vererbung implementiert werden (das hätte sonst bestimmte Einschränkungen zur Folge, so könnten POD-Tuplemember nicht mehr per memcpy angefasst werden).</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2354437</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2354437</guid><dc:creator><![CDATA[camper]]></dc:creator><pubDate>Sat, 21 Sep 2013 17:36:59 GMT</pubDate></item><item><title><![CDATA[Reply to Map mit Template Typen on Sat, 21 Sep 2013 17:40:20 GMT]]></title><description><![CDATA[<blockquote>
<p>Das klingt tatsächlich doof, den der unique_ptr ist eigentlich Pflicht in modernem C++.</p>
</blockquote>
<p>Das ist doch Quatsch. Hoer doch mal mit dem Dogma auf!</p>
<blockquote>
<p>Benutze RAII wann immer es geht!</p>
</blockquote>
<p>Macht er doch, er will sie im Destruktor freigeben ...</p>
<blockquote>
<p>Wahrscheinlich meint er, weil er rohe Pointer benutzt holt er Geschwindigkeit raus.<br />
Aber er weis nicht, was er macht daher...</p>
</blockquote>
<p>Aus der Luft gegriffene Unterstellung.</p>
<blockquote>
<p>Den Deleter.</p>
</blockquote>
<p>Der Deleter steckt normalerweise im Typ und nicht im Objekt. 2 unique_ptr vom gleichen Typ koennen keinen unterschiedlichen deleter haben.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2354439</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2354439</guid><dc:creator><![CDATA[knivil]]></dc:creator><pubDate>Sat, 21 Sep 2013 17:40:20 GMT</pubDate></item><item><title><![CDATA[Reply to Map mit Template Typen on Sat, 21 Sep 2013 17:51:42 GMT]]></title><description><![CDATA[<blockquote>
<p>Das heißt, bei Basisklasen, die auch Subobjekte sind, darf man das - hier nicht?</p>
</blockquote>
<p>Hmm. Die Frage sollte sich wohl von selbst beantworten. Natürlich können die nicht optimiert werden...</p>
<blockquote>
<p>unique_ptr vom gleichen Typ koennen keinen unterschiedlichen deleter haben.</p>
</blockquote>
<p>Nein der Typ ihres Deleters kann nicht unterschiedlich sein, und? Was heißt das jetzt im Bezug auf den Member?</p>
<blockquote>
<p>Das ist doch Quatsch.</p>
</blockquote>
<p>Was ist Quatsch? Ich rede offensichtlich von den Fällen, wo ein roher Zeiger ein Objekt besitzt...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2354441</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2354441</guid><dc:creator><![CDATA[Sone]]></dc:creator><pubDate>Sat, 21 Sep 2013 17:51:42 GMT</pubDate></item><item><title><![CDATA[Reply to Map mit Template Typen on Sat, 21 Sep 2013 17:44:52 GMT]]></title><description><![CDATA[<blockquote>
<p>Was heißt das jetzt im Bezug auf den Member?</p>
</blockquote>
<p>Warum sollte ich den Deleter als Member halten, wenn er fuer alle Objekte gleich ist?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2354443</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2354443</guid><dc:creator><![CDATA[knivil]]></dc:creator><pubDate>Sat, 21 Sep 2013 17:44:52 GMT</pubDate></item><item><title><![CDATA[Reply to Map mit Template Typen on Sat, 21 Sep 2013 17:46:47 GMT]]></title><description><![CDATA[<p>nvm... sieht so aus als ob gccs tuple EBO auf alle leeren, nicht-finalen nicht-Tuple-Member anwendet. Hm...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2354444</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2354444</guid><dc:creator><![CDATA[camper]]></dc:creator><pubDate>Sat, 21 Sep 2013 17:46:47 GMT</pubDate></item></channel></rss>