<?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[Klassen und Objecte]]></title><description><![CDATA[<p>Hey @ all ,</p>
<p>bin neu hier und ich hoffe ich hab das richtige Forum erwischt <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>
<p>Lerne nun schon etwas C++ , und will damit auch nicht so schnell aufhören,<br />
nun bin ich bein Klassen und Objecten angekommen. Habe auch verstanden wie man sie deklariert und definiert aber ein unter Kapitel macht mir doch ganz schön zu schaffen. Nämlich Private und Public , in einer Klasse ist ja wenn man es nicht angibt alles Privat und in meinem Buch wurde nun Öffentliche Zugriffsfunktionen erklärt , nur leider verstehe ich dies nicht so ganz , vorallem mit der Variable übergabe an die einzelnen Elementvariablen und funktionen .</p>
<pre><code>#include &lt;iostream.h&gt;

class ausgabe
{
    public:
    int SetZahl(int ausgabe_zahl);
    private:
    int zahl;
};

int ausgabe::SetZahl(int ausgabe_zahl)
{
    ausgabe_zahl = zahl;
    return ausgabe_zahl;
}

int main()
{
    ausgabe ausgeben;
    ausgeben.SetZahl(5);
    cout &lt;&lt; ausgeben.SetZahl();
    system(&quot;pause&quot;);
}
</code></pre>
<p>.... das ist mal ein Beispiel von mir .. könnt ihr vielleicht ein bisschen erklären wie ich das anstelle mit der Übergabe der richtigen Variablen (Parameter) ..</p>
<p>Ich benutze dieses Buch :</p>
<p><a href="http://informit.de/books/c++21/data/start.htm" rel="nofollow">http://informit.de/books/c++21/data/start.htm</a></p>
<p>( Es ist Tag 6) .. nur Leider finde ich es ein wenig zu unausführlich geschrieben in diesem Kapitel.</p>
<p>Hoffe mir kann jemand helfen , da ich alleine nicht mehr weiter komme</p>
<p>MFG</p>
<p>Toa</p>
<p>Edit : ich weiß das ich die cout ausgabe noch altmodisch mache , normalerweiße benutzt man ja iostream da dies eine neuere Bib ist ..</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/182392/klassen-und-objecte</link><generator>RSS for Node</generator><lastBuildDate>Tue, 22 Sep 2026 17:34:55 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/182392.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 24 May 2007 15:14:31 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Klassen und Objecte on Thu, 24 May 2007 15:23:19 GMT]]></title><description><![CDATA[<p>Hey @ all ,</p>
<p>bin neu hier und ich hoffe ich hab das richtige Forum erwischt <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>
<p>Lerne nun schon etwas C++ , und will damit auch nicht so schnell aufhören,<br />
nun bin ich bein Klassen und Objecten angekommen. Habe auch verstanden wie man sie deklariert und definiert aber ein unter Kapitel macht mir doch ganz schön zu schaffen. Nämlich Private und Public , in einer Klasse ist ja wenn man es nicht angibt alles Privat und in meinem Buch wurde nun Öffentliche Zugriffsfunktionen erklärt , nur leider verstehe ich dies nicht so ganz , vorallem mit der Variable übergabe an die einzelnen Elementvariablen und funktionen .</p>
<pre><code>#include &lt;iostream.h&gt;

class ausgabe
{
    public:
    int SetZahl(int ausgabe_zahl);
    private:
    int zahl;
};

int ausgabe::SetZahl(int ausgabe_zahl)
{
    ausgabe_zahl = zahl;
    return ausgabe_zahl;
}

int main()
{
    ausgabe ausgeben;
    ausgeben.SetZahl(5);
    cout &lt;&lt; ausgeben.SetZahl();
    system(&quot;pause&quot;);
}
</code></pre>
<p>.... das ist mal ein Beispiel von mir .. könnt ihr vielleicht ein bisschen erklären wie ich das anstelle mit der Übergabe der richtigen Variablen (Parameter) ..</p>
<p>Ich benutze dieses Buch :</p>
<p><a href="http://informit.de/books/c++21/data/start.htm" rel="nofollow">http://informit.de/books/c++21/data/start.htm</a></p>
<p>( Es ist Tag 6) .. nur Leider finde ich es ein wenig zu unausführlich geschrieben in diesem Kapitel.</p>
<p>Hoffe mir kann jemand helfen , da ich alleine nicht mehr weiter komme</p>
<p>MFG</p>
<p>Toa</p>
<p>Edit : ich weiß das ich die cout ausgabe noch altmodisch mache , normalerweiße benutzt man ja iostream da dies eine neuere Bib ist ..</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1291488</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1291488</guid><dc:creator><![CDATA[Toa]]></dc:creator><pubDate>Thu, 24 May 2007 15:23:19 GMT</pubDate></item><item><title><![CDATA[Reply to Klassen und Objecte on Thu, 24 May 2007 15:35:06 GMT]]></title><description><![CDATA[<p>hmm ok ein gaanz einfaches Beispiel</p>
<pre><code class="language-cpp">class a 
{
// private! Default einer class
public: // public =&gt; Jeder kann auf die Funktion des Objektes zugreifen
    void set_variable(const int variable) { m_variable = variable; }

private: // private =&gt; Nur Funktion innerhalb des Objektes können drauf zugreifen
    int m_variable; // so kannst du auch verhindern das jemand was an der Variable ändert, was dazu führen würde, das der Rest deiner Klasse nicht mehr funktioniert ...
protected: // von a erbende Klassen können auf die folgenden Sachen zugreifen.
};
</code></pre>
<p>...<br />
=&gt;</p>
<pre><code class="language-cpp">int main()
{
    a inst; // default-konstruktor wird genommen ...
    a.m_variable = 10; // GEHT NICHT!
    a.set_variable(10); // GEHT!
}
</code></pre>
<p><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>
]]></description><link>https://www.c-plusplus.net/forum/post/1291503</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1291503</guid><dc:creator><![CDATA[*D*Evil]]></dc:creator><pubDate>Thu, 24 May 2007 15:35:06 GMT</pubDate></item><item><title><![CDATA[Reply to Klassen und Objecte on Thu, 24 May 2007 15:40:17 GMT]]></title><description><![CDATA[<p>RIeßen Dank sowas hab ich gebraucht , da weiß ich welche Variablen mit welchen Übereinstimmen müssen , noch ma Big Thx !!! Ich hau mich wieder aufs Bett weiter lernen ,.. Immer mit meinem Ziel vor Augen <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>
<p>MFG Toa</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1291509</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1291509</guid><dc:creator><![CDATA[Toa]]></dc:creator><pubDate>Thu, 24 May 2007 15:40:17 GMT</pubDate></item><item><title><![CDATA[Reply to Klassen und Objecte on Thu, 24 May 2007 15:44:11 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>das Beispiel ist etwas merkwuerdig. Du hast keine Get-Methode, um an den Wert<br />
zu kommen.</p>
<p>BTW: Das mit cout ist schon richtig so.</p>
<p>Mit Klassen kapselst du Daten und diese Daten sind private, weil der Benutzer<br />
der Klasse diese lediglich ueber ein definiertes Interface benutzen soll.</p>
<p>Man koennte sich zum Speichern eines Bruches z. B. folgende Klasse schreiben:</p>
<pre><code class="language-cpp">class Fraction {
    private:
        int numerator;
        int denumerator;
    public:
        Fraction(const int&amp; n, const int&amp; d)
            : numerator(n), denumerator(d) 
        {}

        int get_numerator() {
            return numerator;
        }

        int set_numerator(const int&amp; n) {
            numerator = n;
        }

        int get_denumerator() {
            return denumerator();
        }

        int set_denumerator(const int&amp; d) {
            denumerator = d;
        }
</code></pre>
<p>Mit Hilfe der set-Methoden kannst du die Werte entsprechend setzen.</p>
<pre><code class="language-cpp">Fraction fraction(4, 5); //ctor aufruf =&gt; numerator = 4, denumerator = 5

cout&lt;&lt;fraction.get_numerator()&lt;&lt;&quot;/&quot;&lt;&lt;fraction.get_denumerator()&lt;&lt;endl;

//wir wollen einen anderen Bruch, z. B. 3/4
fraction.set_numerator(3);
fraction.set_denumerator(4);

//und wieder ausgeben
cout&lt;&lt;fraction.get_numerator()&lt;&lt;&quot;/&quot;&lt;&lt;fraction.get_denumerator()&lt;&lt;endl;
</code></pre>
<p>Warum der Umweg ueber Methoden? Unter Umstaenden willst du noch irgendwelche<br />
Ueberpruefungen machen, um die der Benutzer nicht drum herum kommen soll. Z. B.<br />
die Pruefung, ob 'denumerator' auf 0 gesetzt wird (was nicht zulaessig waere).</p>
<p>gruss<br />
v R</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1291512</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1291512</guid><dc:creator><![CDATA[virtuell Realisticer]]></dc:creator><pubDate>Thu, 24 May 2007 15:44:11 GMT</pubDate></item><item><title><![CDATA[Reply to Klassen und Objecte on Thu, 24 May 2007 16:06:26 GMT]]></title><description><![CDATA[<p>So ich hab jetzt</p>
<pre><code>#include &lt;iostream.h&gt;

class ausgabe
{
    public:
    int zahl_ausgabe(int variable)
    {
        zahl=variable;
        return variable;
    }
    private:
    int zahl;
};

int main()
{
    ausgabe die_ausgabe;
    ausgabe.zahl_ausgabe(10);

}
</code></pre>
<p>Aber Compiler bringt mir den Fehlr Expected Primary Expression befor ´.´ bei<br />
ausgabe.zahl_ausgabe(10);</p>
<p>Aber es stimmt doch alles ? ..</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1291526</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1291526</guid><dc:creator><![CDATA[Toa]]></dc:creator><pubDate>Thu, 24 May 2007 16:06:26 GMT</pubDate></item><item><title><![CDATA[Reply to Klassen und Objecte on Thu, 24 May 2007 16:09:53 GMT]]></title><description><![CDATA[<p>Du musst mit dem Objekt arbeiten, welches du angelegt hast.</p>
<pre><code class="language-cpp">ausgabe eine_ausgabe;
</code></pre>
<p>Instanziiert ein Objekt vom Typ 'ausgabe'. Dein Objekt wird nur ueber<br />
'eine_ausgabe' referenziert und damit arbeitest du auch.</p>
<p>Korrekt muesste es also heissen:</p>
<pre><code class="language-cpp">eine_ausgabe.zahl_ausgabe(10);
</code></pre>
<p>BTW: Du solltest eine extra get- und set-Methode schreiben. Denn immer wenn<br />
du etwas ausgeben willst, ueberschreibst du es zunaechst mit einer neuen Wert.</p>
<p>gruss<br />
v R</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1291529</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1291529</guid><dc:creator><![CDATA[virtuell Realisticer]]></dc:creator><pubDate>Thu, 24 May 2007 16:09:53 GMT</pubDate></item><item><title><![CDATA[Reply to Klassen und Objecte on Thu, 24 May 2007 16:29:38 GMT]]></title><description><![CDATA[<p>Sorry für den Fall das ich eventuell nerve ,</p>
<p>aber irgendwie klappts net obwohl ich jetzt schon ziemlich viel richtig gemacht hab meiner Meinung nach xD</p>
<pre><code>#include &lt;iostream.h&gt;

class ausgabe
{
    public:

    int SetZahl(int variable);
    int GetZahl();

    private:

    int zahl;
}

int ausgabe::SetZahl(int variable)
{
    zahl=variable;
}

int ausgabe::GetZahl()
{
    return zahl;
}

int main()
{
    ausgabe eine_ausgabe;
    eine_ausgabe.SetZahl(10);
    cout &lt;&lt; eine_ausgabe.GetZahl();
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1291549</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1291549</guid><dc:creator><![CDATA[Toa]]></dc:creator><pubDate>Thu, 24 May 2007 16:29:38 GMT</pubDate></item><item><title><![CDATA[Reply to Klassen und Objecte on Thu, 24 May 2007 16:53:05 GMT]]></title><description><![CDATA[<p>Definiere &quot;klappt nicht&quot;. Gibt es irgendwelche Fehler? Bitte angeben <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>
<p>gruss<br />
v R</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1291568</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1291568</guid><dc:creator><![CDATA[virtuell Realisticer]]></dc:creator><pubDate>Thu, 24 May 2007 16:53:05 GMT</pubDate></item><item><title><![CDATA[Reply to Klassen und Objecte on Thu, 24 May 2007 16:59:29 GMT]]></title><description><![CDATA[<p>Also es kommen folgende fehlermeldungen</p>
<p>Zeile 16 : new types may not be defined in a return type<br />
Zeile 16 : extraneous int ignored<br />
Zeile 16 : prototyp for ausgabe ausgabe::SetZahl(int) does not match any in class ausgabe<br />
Zeile 7: candidate is : int ausgabe::SetZahl(int)<br />
Zeile 16 : ausgabe ausgabe::SetZahl(int) and int ausgabe::SetZahl(int) cannot be overloaded</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1291574</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1291574</guid><dc:creator><![CDATA[Toa]]></dc:creator><pubDate>Thu, 24 May 2007 16:59:29 GMT</pubDate></item><item><title><![CDATA[Reply to Klassen und Objecte on Thu, 24 May 2007 17:01:31 GMT]]></title><description><![CDATA[<p>Die Klassendeklaration muss mit einem Semikolon abgeschlossen werden. Ausserdem<br />
solltest du den Rueckgabetyp der set-Methode in void umaendern.</p>
<p>gruss<br />
v R</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1291576</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1291576</guid><dc:creator><![CDATA[virtuell Realisticer]]></dc:creator><pubDate>Thu, 24 May 2007 17:01:31 GMT</pubDate></item><item><title><![CDATA[Reply to Klassen und Objecte on Thu, 24 May 2007 17:06:26 GMT]]></title><description><![CDATA[<p>ohh haaa danke , wenn ich groß bin will ich auch so gut Proggen können wie du , mir is grad aufgefallen das du schon Seit 2000 hier bist ,.. du musst ziemlich gut sein. Hab leider erst jetzt mit C++ angefangen und vorher meine Zeit mit Qbasic vergoldet .. <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="😕"
    /> ...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1291582</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1291582</guid><dc:creator><![CDATA[Toa]]></dc:creator><pubDate>Thu, 24 May 2007 17:06:26 GMT</pubDate></item><item><title><![CDATA[Reply to Klassen und Objecte on Thu, 24 May 2007 17:10:33 GMT]]></title><description><![CDATA[<p>Toa schrieb:</p>
<blockquote>
<p>ohh haaa danke , wenn ich groß bin will ich auch so gut Proggen können wie du , mir is grad aufgefallen das du schon Seit 2000 hier bist ,.. du musst ziemlich gut sein. Hab leider erst jetzt mit C++ angefangen und vorher meine Zeit mit Qbasic vergoldet .. <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="😕"
    /> ...</p>
</blockquote>
<p>Noe, hat nix mit gutsein zu tun. Nur sind das so Fehler, die man im Laufe seiner<br />
Jahre natuerlich auch selbst oft genug gemacht hat, daher schaut man direkt<br />
erstmal auf diese Art von Fehler ;).</p>
<p>Das ich seit 2000 hier bin, sagt ja nix ueber die Qualitaet meiner Beitraege oder<br />
mein koennen aus.</p>
<p>gruss<br />
v R</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1291584</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1291584</guid><dc:creator><![CDATA[virtuell Realisticer]]></dc:creator><pubDate>Thu, 24 May 2007 17:10:33 GMT</pubDate></item></channel></rss>