<?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[Überladen von []&#x2F;=]]></title><description><![CDATA[<p>Hi.</p>
<p>Ich bin im Moment dabei sowas ähnliches wie eine map&lt;&gt; nachzubauen und habe ein kleines Problem mit dem Operator []. Mit folgendem Code habe ich ihn überladen:</p>
<pre><code>t&amp; operator[](const k key)
{
    return content[key];
}
</code></pre>
<p>Funktioniert sowohl beim Auslesen als auch beim Ändern eines Wertes in der Variable &quot;content&quot; (bei der es sich um eine normale map&lt;k,t&gt; handelt). Problem ist aber, dass ich beim Zuweisen (map[k] = t) nicht nur den Wert ändern möchte, sondern auch noch etwas an einer anderen Variable der Klasse ändern möchte (vector&lt;k&gt; um genau zu sein). Wenn ich aber noch den =-Operator überlade wird das überhaupt nicht beachtet, die Methode wird nicht einmal aufgerufen (nur bei map = k). Wie mache ich es also richtig?</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/125216/überladen-von</link><generator>RSS for Node</generator><lastBuildDate>Wed, 15 Apr 2026 01:34:35 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/125216.rss" rel="self" type="application/rss+xml"/><pubDate>Fri, 04 Nov 2005 14:01:20 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Überladen von []&#x2F;= on Fri, 04 Nov 2005 14:01:20 GMT]]></title><description><![CDATA[<p>Hi.</p>
<p>Ich bin im Moment dabei sowas ähnliches wie eine map&lt;&gt; nachzubauen und habe ein kleines Problem mit dem Operator []. Mit folgendem Code habe ich ihn überladen:</p>
<pre><code>t&amp; operator[](const k key)
{
    return content[key];
}
</code></pre>
<p>Funktioniert sowohl beim Auslesen als auch beim Ändern eines Wertes in der Variable &quot;content&quot; (bei der es sich um eine normale map&lt;k,t&gt; handelt). Problem ist aber, dass ich beim Zuweisen (map[k] = t) nicht nur den Wert ändern möchte, sondern auch noch etwas an einer anderen Variable der Klasse ändern möchte (vector&lt;k&gt; um genau zu sein). Wenn ich aber noch den =-Operator überlade wird das überhaupt nicht beachtet, die Methode wird nicht einmal aufgerufen (nur bei map = k). Wie mache ich es also richtig?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/908176</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/908176</guid><dc:creator><![CDATA[Floele]]></dc:creator><pubDate>Fri, 04 Nov 2005 14:01:20 GMT</pubDate></item><item><title><![CDATA[Reply to Überladen von []&#x2F;= on Fri, 04 Nov 2005 14:12:08 GMT]]></title><description><![CDATA[<p>So einfach ist das nicht. Wenn Du eine Referenz zurück lieferst, kann der Aufrufer damit machen, was er will. Ein Lösung wäre ein Proxy-Objekt zurück zu liefern, der den Zuweisungsoperator überlädt. Das Proxy-Objekt muß dann eine Referenz auf Deine Map halten, um diese dann über die Zuweisung zu benachrichtigen.</p>
<pre><code>template &lt;typename t&gt;
class MyMap;

template &lt;typename T&gt;
class MyProxy
{
    MyMap&amp; myMap;
    T&amp; myValue;
  public:
    MyProxy(myMap&amp; m, T&amp; v)
      : myMap(m), myValue(v)
    { }
    // mach Proxy-objekt konvertierbar in den ursprünglichen Typ
    operator T&amp;             { return myValue; }
    operator const T&amp; const { return myValue; }
    MyProxy&amp; operator= (const T&amp; newVal)
    {
      myValue = newVal;
      myMap.notify(newVal);
    }
};

template &lt;typename t&gt;
class MyMap
{
    friend class MyProxy&lt;t&gt;;
    void notify(const t&amp;)
    {
      // es wurde eine Zuweisung durchgeführt
    }
  public:
    MyProxy&lt;t&gt; operator[](const k key) 
    { 
       return MyProxy&lt;t&gt;(*this, content[key]); 
    }
};
</code></pre>
<p>Gruß</p>
<p>Tommi</p>
]]></description><link>https://www.c-plusplus.net/forum/post/908189</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/908189</guid><dc:creator><![CDATA[tntnet]]></dc:creator><pubDate>Fri, 04 Nov 2005 14:12:08 GMT</pubDate></item><item><title><![CDATA[Reply to Überladen von []&#x2F;= on Fri, 04 Nov 2005 14:44:04 GMT]]></title><description><![CDATA[<blockquote>
<p>So einfach ist das nicht.</p>
</blockquote>
<p>Das hatte ich befürchtet <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f644.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_rolling_eyes"
      title=":rolling_eyes:"
      alt="🙄"
    /><br />
Nunja, ich gucke mir deine Idee mal an und melde mich dann bei Erfolg/Misserfolg.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/908213</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/908213</guid><dc:creator><![CDATA[Floele]]></dc:creator><pubDate>Fri, 04 Nov 2005 14:44:04 GMT</pubDate></item><item><title><![CDATA[Reply to Überladen von []&#x2F;= on Fri, 04 Nov 2005 16:52:49 GMT]]></title><description><![CDATA[<p>So, ich habe jetzt mal versucht deinen Code zu kompilieren (ohne operator[] in MyMap erstmal) aber ich bekomme einige Fehler. Als Anfänger würde ich es begrüßen eine kompilierbare Version von deiner Idee zu bekommen <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title=":)"
      alt="🙂"
    /></p>
<pre><code>7 [...] ISO C++ forbids declaration of `MyMap' with no type
14 [...] invalid member function declaration 
15 [...] `const' qualifiers cannot be applied to `const T&amp;'
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/908318</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/908318</guid><dc:creator><![CDATA[Floele]]></dc:creator><pubDate>Fri, 04 Nov 2005 16:52:49 GMT</pubDate></item><item><title><![CDATA[Reply to Überladen von []&#x2F;= on Fri, 04 Nov 2005 17:02:37 GMT]]></title><description><![CDATA[<p>Natürlich muß die siebte Zeile lauten &quot;MyMap&lt;T&gt;&amp; myMap;&quot; - da die Map-Klasse ja ein Template ist. Und bei den Konvertierungsoperatoren fehlen die Klammern &quot;operator T&amp;()&quot; bzw. &quot;operator const T&amp;() const&quot;</p>
]]></description><link>https://www.c-plusplus.net/forum/post/908327</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/908327</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Fri, 04 Nov 2005 17:02:37 GMT</pubDate></item><item><title><![CDATA[Reply to Überladen von []&#x2F;= on Fri, 04 Nov 2005 17:12:49 GMT]]></title><description><![CDATA[<p>OK, einen haben wir noch:</p>
<pre><code>10 [...] expected `)' before '&amp;' token
</code></pre>
<p>Ein &lt;T&gt; muss da jedenfalls nicht hin.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/908341</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/908341</guid><dc:creator><![CDATA[Floele]]></dc:creator><pubDate>Fri, 04 Nov 2005 17:12:49 GMT</pubDate></item><item><title><![CDATA[Reply to Überladen von []&#x2F;= on Fri, 04 Nov 2005 17:16:10 GMT]]></title><description><![CDATA[<p>&quot;MyProxy(MyMap&lt;T&gt;&amp; m, T&amp; v)&quot;</p>
<p>*nochmal den Code durchsieht* mir fallen jetzt keine Fehler mehr auf</p>
]]></description><link>https://www.c-plusplus.net/forum/post/908345</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/908345</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Fri, 04 Nov 2005 17:16:10 GMT</pubDate></item><item><title><![CDATA[Reply to Überladen von []&#x2F;= on Fri, 04 Nov 2005 17:16:11 GMT]]></title><description><![CDATA[<p>selbstverständlich muss da &lt;T&gt; hin und ausserdem muss es großgeschrieben werden, denn wir meinen ja das template...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/908346</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/908346</guid><dc:creator><![CDATA[camper]]></dc:creator><pubDate>Fri, 04 Nov 2005 17:16:11 GMT</pubDate></item><item><title><![CDATA[Reply to Überladen von []&#x2F;= on Fri, 04 Nov 2005 17:23:01 GMT]]></title><description><![CDATA[<p>Ok, jetzt gehts. Mit &lt;T&gt; hatte es wegen der falschen Groß/Kleinschreibung von MyMap nicht funktioniert.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/908353</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/908353</guid><dc:creator><![CDATA[Floele]]></dc:creator><pubDate>Fri, 04 Nov 2005 17:23:01 GMT</pubDate></item><item><title><![CDATA[Reply to Überladen von []&#x2F;= on Fri, 04 Nov 2005 17:40:22 GMT]]></title><description><![CDATA[<p>So, ich habe die Proxy-Klasse jetzt eingebaut und alles funktioniert wie gewünscht. Danke!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/908364</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/908364</guid><dc:creator><![CDATA[Floele]]></dc:creator><pubDate>Fri, 04 Nov 2005 17:40:22 GMT</pubDate></item><item><title><![CDATA[Reply to Überladen von []&#x2F;= on Fri, 04 Nov 2005 18:07:11 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">operator T&amp;             { return myValue; }
    operator const T&amp; const { return myValue; }
</code></pre>
<p>keine gute idee - das führt nähmlich schnell zu mehrdeutigkeiten, ausserdem könnte man den proxy so (scheinbar) umgehen. denn sowohl ein T&amp; als auch ein const T&amp; können gleichermassen benutzt werden um ein T zu erzeugen. die auswahl von benutzerdefinierten konvertierungsoperatoren richtet sich NICHT nach den const-qualifierern des arguments sondern nur nach den argumenten der zielfunktion - alle konvertierungs-operatoren (soweit aufrufbar) sind gleichermassen gut.</p>
<p>besser:</p>
<pre><code class="language-cpp">operator T const { return myValue; }
</code></pre>
<p>und dafür ein const overload für op[] in MyMap das einfach ein T zurückgibt. sobald man mit proxies arbeitet sollte man nirgend mehr referenzen verwenden (höchtens als optimierung). denn ein</p>
<pre><code class="language-cpp">&amp;map[..]
</code></pre>
<p>ist dann nicht mehr sinnvoll.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/908377</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/908377</guid><dc:creator><![CDATA[camper]]></dc:creator><pubDate>Fri, 04 Nov 2005 18:07:11 GMT</pubDate></item><item><title><![CDATA[Reply to Überladen von []&#x2F;= on Fri, 04 Nov 2005 20:03:46 GMT]]></title><description><![CDATA[<p>camper schrieb:</p>
<blockquote>
<p>und dafür ein const overload für op[] in MyMap das einfach ein T zurückgibt.</p>
</blockquote>
<p>Wie genau sollte es dann aussehen?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/908441</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/908441</guid><dc:creator><![CDATA[Floele]]></dc:creator><pubDate>Fri, 04 Nov 2005 20:03:46 GMT</pubDate></item><item><title><![CDATA[Reply to Überladen von []&#x2F;= on Fri, 04 Nov 2005 20:16:52 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">t operator[](const k key) const
{
    return content[key];
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/908448</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/908448</guid><dc:creator><![CDATA[camper]]></dc:creator><pubDate>Fri, 04 Nov 2005 20:16:52 GMT</pubDate></item><item><title><![CDATA[Reply to Überladen von []&#x2F;= on Fri, 04 Nov 2005 20:46:19 GMT]]></title><description><![CDATA[<pre><code>operator T const { return myValue; }
</code></pre>
<p>Das geht so nicht wie ich grade feststelle.</p>
<pre><code>105 [...] invalid member function declaration
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/908473</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/908473</guid><dc:creator><![CDATA[Floele]]></dc:creator><pubDate>Fri, 04 Nov 2005 20:46:19 GMT</pubDate></item><item><title><![CDATA[Reply to Überladen von []&#x2F;= on Fri, 04 Nov 2005 21:34:53 GMT]]></title><description><![CDATA[<p>camper schrieb:</p>
<blockquote>
<pre><code class="language-cpp">operator T&amp;             { return myValue; }
    operator const T&amp; const { return myValue; }
</code></pre>
<p>keine gute idee - das führt nähmlich schnell zu mehrdeutigkeiten, ausserdem könnte man den proxy so (scheinbar) umgehen. denn sowohl ein T&amp; als auch ein const T&amp; können gleichermassen benutzt werden um ein T zu erzeugen. die auswahl von benutzerdefinierten konvertierungsoperatoren richtet sich NICHT nach den const-qualifierern des arguments sondern nur nach den argumenten der zielfunktion - alle konvertierungs-operatoren (soweit aufrufbar) sind gleichermassen gut.</p>
</blockquote>
<p>Ne, die Lage ist klar.richtig ist, dass beide rückgabewerte gleich gut sind, aber es ist nicht egal, welche der beiden überladungen aufgerufen wird. das const in der 2. methode hat ne große wirkung ;).</p>
<p>(flugs nochmal getestet)</p>
<pre><code class="language-cpp">struct test{
    int i,j;
    test():i(1),j(2){}
    operator int&amp;(){//klammern net vergessen
        return i;
    }

    operator const int&amp;()const{//dito
        return j;
    }
};
int main(){
    test t;
    cout&lt;&lt;t&lt;&lt;endl;
	cout&lt;&lt;const_cast&lt;const test&amp;&gt;(t);
	int i;
	cin&gt;&gt;i;
}
</code></pre>
<p>ausgabe: 1 2</p>
]]></description><link>https://www.c-plusplus.net/forum/post/908517</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/908517</guid><dc:creator><![CDATA[otze]]></dc:creator><pubDate>Fri, 04 Nov 2005 21:34:53 GMT</pubDate></item><item><title><![CDATA[Reply to Überladen von []&#x2F;= on Sat, 05 Nov 2005 06:29:43 GMT]]></title><description><![CDATA[<p>hm ja, stimmt - hatte mal ein problem mit solchen overloads, aber das war doch noch ein bisschen anders. ich bleibe aber dabei, dass es keine gute idee ist, referenzen auf interna eines proxies herauszugeben, da das dem zweck des proxies doch irgendwie zuwiderläuft. und mit konvertierungs-operatoren sollte man sowieso sehr vorsichtig umgehen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/908597</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/908597</guid><dc:creator><![CDATA[camper]]></dc:creator><pubDate>Sat, 05 Nov 2005 06:29:43 GMT</pubDate></item><item><title><![CDATA[Reply to Überladen von []&#x2F;= on Sat, 05 Nov 2005 10:58:58 GMT]]></title><description><![CDATA[<p>du musst ja nicht interna des proxys zurückgeben, sondern interna des objekts, vor das sich der proxy vorschaltet ;).</p>
]]></description><link>https://www.c-plusplus.net/forum/post/908662</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/908662</guid><dc:creator><![CDATA[otze]]></dc:creator><pubDate>Sat, 05 Nov 2005 10:58:58 GMT</pubDate></item><item><title><![CDATA[Reply to Überladen von []&#x2F;= on Sat, 05 Nov 2005 11:04:11 GMT]]></title><description><![CDATA[<p>Nachdem ich jetzt etwas weitergemacht habe, gibt es aber doch noch ein Problem. Beispielsweise geht folgendes nicht:</p>
<pre><code>umap&lt;string, umap&lt;string,string&gt; &gt; test;
test[&quot;foo&quot;][&quot;bar&quot;] = &quot;test&quot;;
</code></pre>
<p>Auch das nicht:</p>
<pre><code>struct t {
	string foo;
	string bar;
};

umap&lt;string,t&gt; test2;
test2[&quot;foo&quot;].foo = &quot;test&quot;;
</code></pre>
<p>Diese Funktionalität ist mir aber von äußerster Wichtigkeit. Also was tun?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/908669</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/908669</guid><dc:creator><![CDATA[Floele]]></dc:creator><pubDate>Sat, 05 Nov 2005 11:04:11 GMT</pubDate></item><item><title><![CDATA[Reply to Überladen von []&#x2F;= on Sat, 05 Nov 2005 11:11:06 GMT]]></title><description><![CDATA[<p>und _was_ geht nicht?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/908672</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/908672</guid><dc:creator><![CDATA[otze]]></dc:creator><pubDate>Sat, 05 Nov 2005 11:11:06 GMT</pubDate></item><item><title><![CDATA[Reply to Überladen von []&#x2F;= on Sat, 05 Nov 2005 11:13:23 GMT]]></title><description><![CDATA[<p>Alles bis auf das Deklarieren geht nicht.</p>
<pre><code>30 [...] 'class MyProxy&lt;std::string, t&gt;' has no member named 'foo'
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/908674</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/908674</guid><dc:creator><![CDATA[Floele]]></dc:creator><pubDate>Sat, 05 Nov 2005 11:13:23 GMT</pubDate></item><item><title><![CDATA[Reply to Überladen von []&#x2F;= on Sat, 05 Nov 2005 11:23:35 GMT]]></title><description><![CDATA[<p>ist ja auch klar, dass es nicht geht. die konvertierungsoperatoren treten nur in kraft, wenn der compiler weis, dass er konvertieren muss. So schaut er nur, ob MyProxy eine variable foo hat.</p>
<p>also konvertierst du entweder von hand mithilfe eines casts, doer lässt dir was einfallen.</p>
<p>möglichkeit 0:<br />
einfach casten:</p>
<pre><code class="language-cpp">static_cast&lt;t&gt;(test2[&quot;foo&quot;]).foo
</code></pre>
<p>möglichkeit 1:<br />
eine get methode einbauen. dann sieht es so aus:</p>
<pre><code class="language-cpp">test2[&quot;foo&quot;].get().foo
</code></pre>
<p>möglichkeit 2:<br />
überladen des op-&gt;</p>
<pre><code class="language-cpp">test2[&quot;foo&quot;]-&gt;foo
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/908679</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/908679</guid><dc:creator><![CDATA[otze]]></dc:creator><pubDate>Sat, 05 Nov 2005 11:23:35 GMT</pubDate></item><item><title><![CDATA[Reply to Überladen von []&#x2F;= on Sat, 05 Nov 2005 11:45:20 GMT]]></title><description><![CDATA[<p>otze schrieb:</p>
<blockquote>
<p>also konvertierst du entweder von hand mithilfe eines casts, doer lässt dir was einfallen.</p>
</blockquote>
<p>Also das &quot;lässt dir was einfallen&quot; wollte ich eigentlich euch überlassen <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f603.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--grinning_face_with_big_eyes"
      title=":D"
      alt="😃"
    /></p>
<blockquote>
<p>möglichkeit 0:<br />
einfach casten:</p>
<pre><code class="language-cpp">static_cast&lt;t&gt;(test2[&quot;foo&quot;]).foo
</code></pre>
</blockquote>
<p>Funktioniert, macht den Code aber nicht grade schöner.</p>
<blockquote>
<p>möglichkeit 1:<br />
eine get methode einbauen. dann sieht es so aus:</p>
<pre><code class="language-cpp">test2[&quot;foo&quot;].get().foo
</code></pre>
<p>möglichkeit 2:<br />
überladen des op-&gt;</p>
<pre><code class="language-cpp">test2[&quot;foo&quot;]-&gt;foo
</code></pre>
</blockquote>
<p>Das geht für meinen ersten Fall</p>
<pre><code>test[&quot;foo&quot;][&quot;bar&quot;] = &quot;test&quot;;
</code></pre>
<p>aber nicht, oder?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/908691</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/908691</guid><dc:creator><![CDATA[Floele]]></dc:creator><pubDate>Sat, 05 Nov 2005 11:45:20 GMT</pubDate></item><item><title><![CDATA[Reply to Überladen von []&#x2F;= on Sat, 05 Nov 2005 14:19:38 GMT]]></title><description><![CDATA[<p>otze schrieb:</p>
<blockquote>
<p>du musst ja nicht interna des proxys zurückgeben, sondern interna des objekts, vor das sich der proxy vorschaltet ;).</p>
</blockquote>
<p>womit der proxy sich selbst ausschaltet - ich dachte der zweck des proxies wäre gerade, den zugriff auf diese interna zu maskieren.<br />
original:</p>
<pre><code class="language-cpp">struct X
{
    // ...
    int&amp; operator[](size_t i) { return data[i]; }
};
void foo(int&amp;)
{
// ...
}
void bar()
{
   X x;
   foo(x[1]);
}
</code></pre>
<p>jetzt mit proxy:</p>
<pre><code class="language-cpp">struct X
{
    struct Proxy
    {
        // ...
        int&amp; ref_;
        operator int&amp;() { return ref_; }
    };
    // ...
    Proxy operator[](size_t i) { return Proxy(data[i]); }
};
void foo(int&amp;)
{
// ...
}
void bar()
{
   X x;
   foo(x[1]);
}
</code></pre>
<p>ups, das kompiliert ja immer noch... und dabei wollten wir doch einen proxy damit wir bei veränderungen noch ein bisschen extra arbeit erledigen können.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/908789</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/908789</guid><dc:creator><![CDATA[camper]]></dc:creator><pubDate>Sat, 05 Nov 2005 14:19:38 GMT</pubDate></item><item><title><![CDATA[Reply to Überladen von []&#x2F;= on Sun, 06 Nov 2005 10:20:07 GMT]]></title><description><![CDATA[<p>Hat jetzt keiner eine Lösung für mein Problem? Mit normalen Maps funktioniert es ja schließlich auch, also muss es doch wohl eine Möglichkeit geben eine Map nachzubauen (mit kleinen Änderungen) die das genauso funktioniert.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/909256</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/909256</guid><dc:creator><![CDATA[Floele]]></dc:creator><pubDate>Sun, 06 Nov 2005 10:20:07 GMT</pubDate></item><item><title><![CDATA[Reply to Überladen von []&#x2F;= on Sun, 06 Nov 2005 10:45:55 GMT]]></title><description><![CDATA[<p>normale maps benutzen keinen proxy. normale maps geben das objekt ansich zurück. Und da der Proxy nicht das Objekt selber ist, kannst du auf ihm nicht die methodend es Objektes aufrufen. du müsstest dir dann schonmal was basteln, was dir das objekt selber gibt(also zb der op-&gt;). Die einzige lösung wär, beim proxy den operator. zu überladen, aber das _darfst_ du nicht. Das sieht der Standard leider nicht vor.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/909273</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/909273</guid><dc:creator><![CDATA[otze]]></dc:creator><pubDate>Sun, 06 Nov 2005 10:45:55 GMT</pubDate></item><item><title><![CDATA[Reply to Überladen von []&#x2F;= on Sun, 06 Nov 2005 11:51:47 GMT]]></title><description><![CDATA[<p>otze schrieb:</p>
<blockquote>
<p>normale maps benutzen keinen proxy. normale maps geben das objekt ansich zurück.[...]Die einzige lösung wär, beim proxy den operator. zu überladen, aber das _darfst_ du nicht. Das sieht der Standard leider nicht vor.</p>
</blockquote>
<p>Und wie konkret machen die maps das bzw. warum kann ich das nicht auch so machen?</p>
<blockquote>
<p>du müsstest dir dann schonmal was basteln, was dir das objekt selber gibt(also zb der op-&gt;).</p>
</blockquote>
<p>Das kann ich mal ausprobieren.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/909323</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/909323</guid><dc:creator><![CDATA[Floele]]></dc:creator><pubDate>Sun, 06 Nov 2005 11:51:47 GMT</pubDate></item></channel></rss>