<?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[Indexoperator bei Zeiger]]></title><description><![CDATA[<p>Hey!</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;
#include &lt;vector&gt;
#include &lt;string&gt;
using namespace std;

class Test
{
	vector&lt;string&gt; mask;
public:
	string&amp; Test::operator[](int index)
	{
		return mask[index];
	}
};

int main()
{
	Test* test = new Test();

	// Dieser Ausdruck ist vom Typ 'Test'
	// Sollte aber vom Typ 'std::string' sein ?!
	test[0];

	string* s = new string();
	s-&gt;resize(10);
	s[0] = 'X'; // Hier funktioniert der Index- Operator aber normal...

	cout &lt;&lt; *s; // X ...
}
</code></pre>
<p><img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/topic/220681/indexoperator-bei-zeiger</link><generator>RSS for Node</generator><lastBuildDate>Tue, 06 Oct 2026 22:13:46 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/220681.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 19 Aug 2008 16:19:04 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Indexoperator bei Zeiger on Tue, 19 Aug 2008 16:19:04 GMT]]></title><description><![CDATA[<p>Hey!</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;
#include &lt;vector&gt;
#include &lt;string&gt;
using namespace std;

class Test
{
	vector&lt;string&gt; mask;
public:
	string&amp; Test::operator[](int index)
	{
		return mask[index];
	}
};

int main()
{
	Test* test = new Test();

	// Dieser Ausdruck ist vom Typ 'Test'
	// Sollte aber vom Typ 'std::string' sein ?!
	test[0];

	string* s = new string();
	s-&gt;resize(10);
	s[0] = 'X'; // Hier funktioniert der Index- Operator aber normal...

	cout &lt;&lt; *s; // X ...
}
</code></pre>
<p><img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1567733</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1567733</guid><dc:creator><![CDATA[ceplusplus*loggedoff]]></dc:creator><pubDate>Tue, 19 Aug 2008 16:19:04 GMT</pubDate></item><item><title><![CDATA[Reply to Indexoperator bei Zeiger on Tue, 19 Aug 2008 16:23:40 GMT]]></title><description><![CDATA[<p>jo !</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;
#include &lt;vector&gt;
#include &lt;string&gt;
using namespace std;

class Test
{
    vector&lt;string&gt; mask;
public:
    string&amp; Test::operator[](int index)
    {
        return mask[index];
    }
};

int main()
{
    Test* test = new Test();

    // Dieser Ausdruck ist vom Typ 'Test'
    // Sollte aber vom Typ 'std::string' sein ?!

    // test ist vom typ Test *
    // test[0] (oder *test) ist vom typ Test

    // was du suchst ist
    *test[0];
    // oder
    test[0][0];
    // oder
    Test &amp;t = *test;
    t[0]

    string* s = new string();
    s-&gt;resize(10);
    s[0] = 'X'; // Hier funktioniert der Index- Operator aber normal...

    cout &lt;&lt; *s; // X ...
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1567738</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1567738</guid><dc:creator><![CDATA[helferlein]]></dc:creator><pubDate>Tue, 19 Aug 2008 16:23:40 GMT</pubDate></item><item><title><![CDATA[Reply to Indexoperator bei Zeiger on Tue, 19 Aug 2008 16:25:30 GMT]]></title><description><![CDATA[<p>Danke erstmal, warum ist es beim std::string anders?</p>
<p>MfG</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1567740</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1567740</guid><dc:creator><![CDATA[cpp@loggedoff@loggedoff]]></dc:creator><pubDate>Tue, 19 Aug 2008 16:25:30 GMT</pubDate></item><item><title><![CDATA[Reply to Indexoperator bei Zeiger on Tue, 19 Aug 2008 16:28:02 GMT]]></title><description><![CDATA[<p>cpp@loggedoff@loggedoff schrieb:</p>
<blockquote>
<p>Danke erstmal, warum ist es beim std::string anders?</p>
<p>MfG</p>
</blockquote>
<p>ist es nicht. schau dir einfach mal s-&gt;size() nach der Zuweisung an.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1567741</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1567741</guid><dc:creator><![CDATA[camper]]></dc:creator><pubDate>Tue, 19 Aug 2008 16:28:02 GMT</pubDate></item><item><title><![CDATA[Reply to Indexoperator bei Zeiger on Tue, 19 Aug 2008 16:29:01 GMT]]></title><description><![CDATA[<p>cpp@loggedoff@loggedoff schrieb:</p>
<blockquote>
<p>Danke erstmal, warum ist es beim std::string anders?</p>
<p>MfG</p>
</blockquote>
<p>Ist es doch gar nicht, bei std::string benutzt du bei my_string[0] den op[] von std::string bei deiner Test Klasse bei my_test[0] den op[] deiner Test-Klasse. Passt doch.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1567743</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1567743</guid><dc:creator><![CDATA[S.T.A.L.K.E.R.]]></dc:creator><pubDate>Tue, 19 Aug 2008 16:29:01 GMT</pubDate></item><item><title><![CDATA[Reply to Indexoperator bei Zeiger on Tue, 19 Aug 2008 16:29:55 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">#include &lt;iostream&gt;
#include &lt;vector&gt;
#include &lt;string&gt;
using namespace std;

class Test
{
    vector&lt;string&gt; mask;
public:
    string&amp; Test::operator[](int index)
    {
        return mask[index];
    }

   // ist für den Lesezugriff wichtig!!!
   const string&amp; Test::operator[](int index)const{
        return mask[index];
   }
};

int main()
{
    Test* test = new Test();

    // Dieser Ausdruck ist vom Typ 'Test'
    // Sollte aber vom Typ 'std::string' sein ?!
    test[0];

    string* s = new string();
    s-&gt;resize(10);
    s[0] = 'X'; // Hier funktioniert der Index- Operator aber normal...

    cout &lt;&lt; *s; // X ...
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1567744</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1567744</guid><dc:creator><![CDATA[Styx]]></dc:creator><pubDate>Tue, 19 Aug 2008 16:29:55 GMT</pubDate></item><item><title><![CDATA[Reply to Indexoperator bei Zeiger on Tue, 19 Aug 2008 16:38:12 GMT]]></title><description><![CDATA[<p>Achso ja na klar ich Depp, hier ...</p>
<p>s[0] = 'X';</p>
<p>... spricht man den String an, nicht einem Element davon.</p>
<p>THX,<br />
MfG</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1567750</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1567750</guid><dc:creator><![CDATA[cpp@loggedoff@loggedoff]]></dc:creator><pubDate>Tue, 19 Aug 2008 16:38:12 GMT</pubDate></item></channel></rss>