Yahoo Clever wird am 4. Mai 2021 (Eastern Time, Zeitzone US-Ostküste) eingestellt. Ab dem 20. April 2021 (Eastern Time) ist die Website von Yahoo Clever nur noch im reinen Lesemodus verfügbar. Andere Yahoo Produkte oder Dienste oder Ihr Yahoo Account sind von diesen Änderungen nicht betroffen. Auf dieser Hilfeseite finden Sie weitere Informationen zur Einstellung von Yahoo Clever und dazu, wie Sie Ihre Daten herunterladen.
Unterschied zwischen Klasse und Struktur bei C++?
Hi so kurz vor Weihnachten noch ne Frage. Ich lern grad c++ und seh vom Aufbau her keinen Unterschied zwischen Klasse und Struktur. Kann mir jemand weiterhelfen?
Wünsche euch allen noch frohe Weihnachten und guten Rutsch.
3 Antworten
- KNLv 7vor 8 JahrenBeste Antwort
Struktur ist die Darstellung der Daten. z.B ein Punkt in 3D ist float[3]. Versiehst du diese Struktur noch mit Methoden (Funktionen) die Du auf diese Klasse anwenden kannst, dann wird daraus eine Klasse. Die Struktur float[3] könnte z.B. Methoden init, draw, savetofile usw. erhalten und wird dadurch zur Klasse.
- 🐟 Fish 🐟Lv 7vor 8 Jahren
Wenn man es genau nimmt eigentlich gar keiner. C++ ist ursprünglich ein Präprozessor für C. Eine Klasse ist dabei nichts weiter als eine Struktur Daten (Member) und Funktionszeigern (Methoden) selbst die Vererbung ist mit einer Struktur abbilden indem hier ein Element Base abgelegt wird. Eine klasse ist also eine Struktur mit einer ganz bestimmten Funktionalität.
class test : basetest
{
long wert;
long methode(long param);
}
Kannst du auch abbilden mit
typedef struct _test
{
struct basetest;
long wert;
long (*methode) (long param);
} test;
Du siehst du kannst mit einer Struktur sehr wohl eine klasse abbilden. C++ ist dabei nur eine Sprachvereinfachung.
Anders herum ist eine klasse eine spezielle Struktur. Übrigens lässt sich selbst die virtualiierung mit Hilfe einer Union realisieren.
- PLv 5vor 8 Jahren
Eine Struktur ist so etwas wie ein Record in Delphi, also eine Gruppe von Variablen.
Eine Klasse kann neben Objekten auch Methoden enthalten und von einer anderen Klasse abgeleitet werden.