[Klasse] 2 Fragen



  • hi

    hab gerade die Funktionen in C++ gerlernt aber das reich noch nicht: ich will mehr! xD
    Interessant sind nun die Klassen,was man dabei beachten muss und wie man sie verstehen sollte und was auch immer 😃
    Ich stelle wie immer einfach ein paar fragen...

    1. Darf man eigentlich Klassen in Headern definieren und dann in CPP dateien ausgeben oder so?Oder ist das so wie bei Funktionen,dass man da extra noch was machen muss?

    2. Das man in Private: die Variablen nicht intialisieren darf weiss ich,aber nur weiss ich noch immer nicht was in das public reingehört ^^
    Könntet ihr mir ein Tutlink schicken oder mir ein bisschen was darüber erzählen? 😉

    Daniel 😉



  • <:Daniel:> schrieb:

    hi

    1. Darf man eigentlich Klassen in Headern definieren

    Ja, aber dann sollten sie inline definiert werden.
    Das ist nicht grundsätzlich sinnvoll.
    Ansonsten solltest Du lediglich deklarieren.

    <:Daniel:> schrieb:

    und dann in CPP dateien ausgeben oder so?Oder ist das so wie bei Funktionen,dass man da extra noch was machen muss?

    Hier verstehe ich die Frage nicht.

    <:Daniel:> schrieb:

    2. Das man in Private: die Variablen nicht intialisieren darf weiss ich,

    Man darf private Variablen (im Konstruktor oder über die Initialisierungsliste) initialisieren. Privat bedeutet, dass man außerhalb von Methoden der Klasse nicht auf die Variablen zugreifen darf.
    [sofern die Funktionen nicht explizit als friend deklariert sind]

    <:Daniel:> schrieb:

    aber nur weiss ich noch immer nicht was in das public reingehört ^^
    Könntet ihr mir ein Tutlink schicken oder mir ein bisschen was darüber erzählen? 😉

    Public-Variablen können von überall gelesen und verändert werden. Das ist nicht immer gewünscht, häufig wirken sich Veränderungen einer Variablen auf andere Variablen aus, so dass man den neuen Wert an eine Funktion übergibt, die alle zu veränderten Variablen auf den korrekten Wert modifiziert.

    Man erklärt diese abhängigen Variablen als privat, damit Variablen nicht außerhalb der Kontrolle der Klasse verändert werden kann.

    Das Stichwort ist 'Information Hiding'.
    Die Außenwelt (der Klasse) bekommt nur zu sehen, was sie sehen muss - nicht mehr.



  • Xin schrieb:

    <:Daniel:> schrieb:

    hi

    1. Darf man eigentlich Klassen in Headern definieren

    Ja, aber dann sollten sie inline definiert werden.
    Das ist nicht grundsätzlich sinnvoll.
    Ansonsten solltest Du lediglich deklarieren.

    Kanns sein, dass du hier Klassendefinition mit Methodendefinition verwechselst?



  • Hi

    danke echt für deine tolle Leistung mir zu helfen 😉
    Nur noch eine letzte bitte: kannst du mir bitte nurnoch auf deutschübersetzte Tutoriallinks zu diesem Thema d.h folgende:

    - Wie ist eine Klasse aufgebaut?
    - Klassen intialisieren
    - Klassen in Headern & CPP-Dateien coden
    - Public,also was man da rein schreibt

    Nur diese vier Themen würde ich gerne lernen und hoffe auch,dass du mir die Links schicken könntest 😉



  • Hallo

    es nützt nichts, nur ein paare Details eines Gesamtkonzeptes zu lernen. Mach also ein komplettes Tutorial zum Thema OOP durch, wie zum Beispiel das hier.

    bis bald
    akari



  • Xin schrieb:

    Kanns sein, dass du hier Klassendefinition mit Methodendefinition verwechselst?

    Yepp.



  • akari schrieb:

    Hallo

    es nützt nichts, nur ein paare Details eines Gesamtkonzeptes zu lernen. Mach also ein komplettes Tutorial zum Thema OOP durch, wie zum Beispiel das hier.

    bis bald
    akari

    ist es aber noch nicht zu früh für mich mit OOP anzufangen?
    Ich kann ja nichtmal Switch anweisungen,etc.. nur if,for,while,etc.. und natürlich alles mögliche,halt die grundlagen ^^



  • <:Daniel:> schrieb:

    Nur diese vier Themen würde ich gerne lernen und hoffe auch,dass du mir die Links schicken könntest 😉

    Lass mich raten: Du musst genau das für den Informatikunterricht lernen?
    Ein eigenes Interesse programmieren zu lernen scheint nicht zu existieren?

    Ein derart spezielles Tutorial gibt es natürlich nicht. Du kannst zum Beispiel hier nach Deinen Themen suchen und natürlich Google nutzen.

    http://tutorial.schornboeck.net/inhalt.htm
    http://www.volkard.de/vcppkold/inhalt.html

    Für den Fall, dass Du etwas programmieren möchtest, solltest Du Dich allerdings nicht derart 'spezialisieren'. Halbwissen kostet mehr Zeit als das eigentliche Lernen.

    Viel Erfolg.


Anmelden zum Antworten