<?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[Eigene String Klasse]]></title><description><![CDATA[<p>Hey liebes Forum,</p>
<p>wenn ich meine eigene String-Klasse programmieren möchte, wie kann ich dann eine Membervariable (nämlich den String) zurückgeben, ohne eine Funktion aufzurufen?<br />
Bei der std::string Klasse geht es ja so:</p>
<pre><code class="language-cpp">std::string AnyString = &quot;Bla Bla Bla&quot;;
if (/* hier wird halt der String zurückgegeben */ AnyString == &quot;Bla Bla Bla&quot;)
 TuDiesDas();
</code></pre>
<p>Ich hoffe, Ihr habt meine Frage verstanden <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>
<p>MFG DerCoder</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/281949/eigene-string-klasse</link><generator>RSS for Node</generator><lastBuildDate>Sun, 23 Aug 2026 11:26:56 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/281949.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 10 Feb 2011 20:12:44 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Eigene String Klasse on Thu, 10 Feb 2011 20:12:44 GMT]]></title><description><![CDATA[<p>Hey liebes Forum,</p>
<p>wenn ich meine eigene String-Klasse programmieren möchte, wie kann ich dann eine Membervariable (nämlich den String) zurückgeben, ohne eine Funktion aufzurufen?<br />
Bei der std::string Klasse geht es ja so:</p>
<pre><code class="language-cpp">std::string AnyString = &quot;Bla Bla Bla&quot;;
if (/* hier wird halt der String zurückgegeben */ AnyString == &quot;Bla Bla Bla&quot;)
 TuDiesDas();
</code></pre>
<p>Ich hoffe, Ihr habt meine Frage verstanden <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>
<p>MFG DerCoder</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2019342</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2019342</guid><dc:creator><![CDATA[DerCoder]]></dc:creator><pubDate>Thu, 10 Feb 2011 20:12:44 GMT</pubDate></item><item><title><![CDATA[Reply to Eigene String Klasse on Thu, 10 Feb 2011 20:14:30 GMT]]></title><description><![CDATA[<p>Du musst die Operatoren überladen. In deinem Beispiel den operator==</p>
<p><a href="http://www.c-plusplus.net/forum/232010" rel="nofollow">http://www.c-plusplus.net/forum/232010</a></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2019343</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2019343</guid><dc:creator><![CDATA[hjkhjk]]></dc:creator><pubDate>Thu, 10 Feb 2011 20:14:30 GMT</pubDate></item><item><title><![CDATA[Reply to Eigene String Klasse on Thu, 10 Feb 2011 20:24:13 GMT]]></title><description><![CDATA[<p>Hier ein kleines Beispiel, welches einen std::string in einer Klasse kapselt und die Vergleichsoperatoren überlädt, damit ein Vergleich möglich ist.</p>
<p>Es handelt sich dabei natürlich nur um ein Beispiel, welches zeigen soll, wie es gemacht wird.</p>
<pre><code class="language-cpp">#include &lt;string&gt;
#include &lt;iostream&gt;

class MyString
{
	private:
		std::string str_;

	public:
		MyString(const std::string&amp; str) : str_(str)
		{
		}

		friend bool operator==(const MyString&amp; lhs, const MyString&amp; rhs);
		friend bool operator==(const MyString&amp; lhs, const char * rhs);
		friend bool operator==(const char *lhs, const MyString&amp; rhs);

		friend bool operator!=(const MyString&amp; lhs, const MyString&amp; rhs);
		friend bool operator!=(const MyString&amp; lhs, const char * rhs);
		friend bool operator!=(const char *lhs, const MyString&amp; rhs);
};

bool operator==(const MyString&amp; lhs, const MyString&amp; rhs)
{
	return lhs.str_ == rhs.str_;
}

bool operator==(const MyString&amp; lhs, const char * rhs)
{
	return lhs.str_ == rhs;
}

bool operator==(const char *lhs, const MyString&amp; rhs)
{
	return rhs.str_ == lhs;
}

bool operator!=(const MyString&amp; lhs, const MyString&amp; rhs)
{
	return !(lhs == rhs);
}

bool operator!=(const MyString&amp; lhs, const char * rhs)
{
	return !(lhs == rhs);
}

bool operator!=(const char *lhs, const MyString&amp; rhs)
{
	return !(rhs == lhs);
}

int main()
{
	MyString test(&quot;Test&quot;);

	if (test == &quot;Test&quot;)
	{
		std::cout &lt;&lt; &quot;Ja&quot; &lt;&lt; std::endl;
	}

	return 0;
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2019349</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2019349</guid><dc:creator><![CDATA[hjkhjk]]></dc:creator><pubDate>Thu, 10 Feb 2011 20:24:13 GMT</pubDate></item><item><title><![CDATA[Reply to Eigene String Klasse on Thu, 10 Feb 2011 20:36:39 GMT]]></title><description><![CDATA[<p>Ganz schön unhandlich. Warum muss op!= ein friend sein, wenn er nur auf op== zugreift?</p>
<pre><code class="language-cpp">#include &lt;string&gt;
#include &lt;iostream&gt;

class MyString
{
	friend bool operator==(const MyString&amp; lhs, const MyString&amp; rhs);
    std::string str_;

public:
    MyString(const char* str) : str_(str)
    {
    }
};

bool operator==(const MyString&amp; lhs, const MyString&amp; rhs)
{
    return lhs.str_ == rhs.str_;
}

bool operator!=(const MyString&amp; lhs, const MyString&amp; rhs)
{
    return !(lhs == rhs);
}

int main()
{
    MyString test(&quot;Test&quot;);

    if (test == &quot;Test&quot;)
        std::cout &lt;&lt; &quot;Ja&quot; &lt;&lt; std::endl;
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2019360</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2019360</guid><dc:creator><![CDATA[Michael E.]]></dc:creator><pubDate>Thu, 10 Feb 2011 20:36:39 GMT</pubDate></item><item><title><![CDATA[Reply to Eigene String Klasse on Thu, 10 Feb 2011 20:49:47 GMT]]></title><description><![CDATA[<p>Okay danke schonmal für die vielen Beiträge!</p>
<p>Habe die Frage falsch formuliert <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=":/"
      alt="😕"
    /><br />
Wenn ich z. B. meinen String in der Konsole ausgeben möchte (bei std::string reicht: )</p>
<pre><code class="language-cpp">cout &lt;&lt; MeinString;
</code></pre>
<p>Wie kann ich das bei meiner String-Klasse machen?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2019368</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2019368</guid><dc:creator><![CDATA[DerCoder]]></dc:creator><pubDate>Thu, 10 Feb 2011 20:49:47 GMT</pubDate></item><item><title><![CDATA[Reply to Eigene String Klasse on Thu, 10 Feb 2011 20:54:53 GMT]]></title><description><![CDATA[<p>&lt;&lt; überladen...</p>
<pre><code class="language-cpp">friend ostream&amp; operator &lt;&lt; (ostream&amp;, const MyString&amp;);
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2019370</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2019370</guid><dc:creator><![CDATA[HighLigerBiMBam]]></dc:creator><pubDate>Thu, 10 Feb 2011 20:54:53 GMT</pubDate></item></channel></rss>