Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C / C++ (WinAPI, Konsole) » Verzögerte Textausgabe und Klassen

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: [ 1 ] > 2 <
010
30.08.2005, 10:25 Uhr
ao

(Operator)



Zitat von ~floh:
Ich hab anhand mehrerer Tutorials schon versucht, denn sinn und zweck von "Klassen" zu verstehen...

Klassen allein sind nur die halbe Miete. Es geht in Wahrheit um "objektorientierte Programmierung" und ihre Vorteile gegenüber der "prozeduralen". Das ist ein größeres Konzept, was sich unter anderem in Klassen manifestiert.

Beim prozeduralen Ansatz verwaltet man irgendwo im Programm seine Daten und lässt Funktionen darauf zugreifen. Die Organisation der Daten und die Sicherstellung, dass nur mit den passenden Funktionen darauf zugegriffen wird, bleibt dem übergeordneten Programm überlassen. Und bei größeren Projekten kann das durchaus verwirrend werden.

Im objektorientierten Ansatz wird aus den Daten und den Funktionen, die diese manipulieren können / dürfen, eine logische Einheit gebildet, das "Objekt" oder auch "Klasse". Das Objekt besteht dann aus Schnittstellen, über die es mit anderen Objekten interagiert und internen Zuständen, die niemanden etwas angehen (Kapselung).

Das erleichtert die Entwicklung und Pflege eines Objekts unabhängig von den anderen und verhindert Kreuz- und Quer-Verflechtungen.

Näheres findest du im Internet oder in jeder guten öffentlichen Bücherei.

ao
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
011
30.08.2005, 10:31 Uhr
ao

(Operator)



Zitat von FloSoft:
Aus dem grund kann man auch keine union und auch kein struct vererben, weil die noch ausm C-Bereich kommen.

Schau her:

C++:
struct Base
{
    int a;
    Base (int _a) : a (_a) {};
};

struct Derived : Base
{
    int b;
    Derived (int _a, int _b) : Base (_a), b (_b) {}
};

int main (void)
{
    Derived D (3, 7);
    return 0;
}


In C geht das natürlich nicht, da sind "Base (int _a) : a (_a) {};" und "struct Derived : Base" Syntaxfehler. In C++ gehts.

ao
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
012
30.08.2005, 13:31 Uhr
FloSoft
Medialer Over-Flow
(Administrator)


@ao, jo struct kann man vererben, ok hast recht, war mein fehler.
--
class God : public ChuckNorris { };
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
013
30.08.2005, 15:46 Uhr
~floh
Gast


danke ao,

ich schau mal nach einem guten buch
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: [ 1 ] > 2 <     [ C / C++ (WinAPI, Konsole) ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: