Gast JAM Geschrieben 10. September 2002 Teilen Geschrieben 10. September 2002 Kann mir jemand folgende Begriffe erklären und vielleicht ein kleines Beispiel dazu geben? Ich komme damit immer durcheinander und bin mir nicht sicher was jetzt genau was bedeutet! Anweisung Zuweisung Argument Ausdruck (abstrakte) Klasse(n) recht herzlichen Dank im Voraus! Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
kingofbrain Geschrieben 10. September 2002 Teilen Geschrieben 10. September 2002 Servus!! Also, ich probiers mal: Anweisung: wie zuhause hol solange Butter, bis der Kühlschrank voll ist (do while) Zuweisung: einer Varbiablen wird ein Wert zugewiesen (int x = 2) Argument: wird einer Methode übergeben, die dann damit arbeiten kann. public int addiere(int zahl1, int zahl2) { return zahl1 + zahl2; } Ausdruck: kommt ausm Drucker (Witz); ein Ausdruck kann irgendwie alles sein (meine Meinung) eine Codezeile ist z.B. ein Ausdruck (abstrakte) Klasse(n): Klassen werden in der objektorientierten Programmierung verwendet. Sie sind abstrakte Objekte (z.B. Haus, Auto) und können Eigenschaften und Verhalten (Methoden) haben. Beim Auto: Eigenschaften: Farbe, PS, VMax; Methoden: anfahren, bremsen. Ich hoffe, es hilft Dir, und vor allem, dass es richtig ist... Schönen Tag noch, k.o. b Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Gast JAM Geschrieben 10. September 2002 Teilen Geschrieben 10. September 2002 Erstmal Danke für die Antwort! Ich hab mal in nem Buch nachgeschlagen.: Ein Ausdruck ist z. B. auch folgendes: 1; Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Jestertales Geschrieben 11. September 2002 Teilen Geschrieben 11. September 2002 Original geschrieben von JAM Ein Ausdruck ist z. B. auch folgendes: 1; Nachdem was ich weiß, ist ein Ausdruck alles, was man zu einem Wert auswerten kann. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Popolino Geschrieben 13. September 2002 Teilen Geschrieben 13. September 2002 Hallöchen, nur noch kurz was zu abstrakten Klassen. Eine abstrakte Klasse ist eine Klasse von der man keine Instanzen (Objekte) erstellen kann. Beim Beispiel Auto wäre es eine Oberklasse in der Vererbungshierarchie. Warum keine Instanzen gebildet werden (dürfen) kann verschiedene Gründe haben! Entweder es macht ganz einfach keinen Sinn oder man kann mit der Instanz der Klasse nichts anfangen. So, ich hoffe ich habe Dich nicht zu sehr verwirrt! Thommy! Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Lachdanan Geschrieben 15. September 2002 Teilen Geschrieben 15. September 2002 Ich dachte immer von einer abstrakten (Basis-)Klasse kann man keine Instanzen bilden weil all ihre Methoden virtuell sind. Oder anders ausgedrückt, eine Klasse welche nur eine nicht virtuelle Methode enthält ist keine abstrakte Klasse. :confused: Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Popolino Geschrieben 16. September 2002 Teilen Geschrieben 16. September 2002 Ja, da hast Du Recht...... ich halt mich an die verständlichere Version! Für mich! Dabei handelt es sich leider um schwer verständliche Definitionen! Denke ich zumindest! Ich brauch sowas recht selten und schau eigentlich immer aufs Neue nach! Grüßle, Thommy! Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Orffi Geschrieben 16. September 2002 Teilen Geschrieben 16. September 2002 Leider hat Lachdanan nicht wirklich recht. Natürlich kann ich von einer Klasse, die virtuelle Funktionen besitzt, ein Exemplar erzeugen. Das liegt aber eher daran, daß virtuelle Funktionen alleine noch keine abstrakte Klasse bedeuten. Um eine abstrakte Klasse zu haben muß man eine "pure virtual function" haben. Und hier imuß man auch noch einmal aufpassen. Sobald ich nur eine pure virtual function habe ist meine Klasse abstrakt. Auch wenn ich ganz "normale" Funktionen in der Klasse definiert habe. HTH Jan PS: #include <iostream> class Animal { public: virtual void move () { std::cout << "move...\n"; } }; class Bird : public Animal { public: void move () { std::cout << "fly...\n"; } }; class AbstractClass { public: void sayHello () { std::cout << "Hello World!\n"; } virtual void doTheBartman () = 0; }; void test ( Animal &animal ) { animal.move (); } int main ( void ) { Animal a; Bird b; test ( a ); test ( b ); AbstractClass ac; //won't work } Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.