Klassenfrage(allgemein)
-
abend

mal nur so ne dumme frage: für was verwendet man klassen?
ich weiß nur daweil ein Beispiel,das ich heute in einem Thread gesehen hab und zwar:- Panzer(mit Panzerung, Angriffskraft,usw..)
aber muss man denn eine klasse für jedes kleine Objekt definieren oO?
müsste man zbsp. für einen egoshooter alle einzelnen kleinigkeiten(WAFFE_NR1, WAFFE_NR2) einzeln neu definieren?nur als bsp.:
class ak_47 { public: void namenderwaffeaufrufen() { //name aufrufen vom privaten bereich } //... private: int stärkederwaffe; std::string name; //... }; class m4 { public: void namenderwaffeaufrufen() { //name aufrufen vom privaten bereich } //... private: int stärkederwaffe; std::string name; //... }; class m3 { public: void namenderwaffeaufrufen() { //name aufrufen vom privaten bereich } //... private: int stärkederwaffe; std::string name; //... };und dann noch zbsp.:
class gravity { //... };Also würde es möglich sein, ne Art "Hauptthema" zu wählen und dieses dann zu gliedern, zbsp. Class Waffen in mehrere unterklassen gliedern(ak, m3,m4,...), also dass es nur eine Klasse ist,die aber mehr gegliedert wird?
wäre sowas möglich?
und letzte frage noch.. für welche bereiche wäre es am sinnvollsten eine klasse zu starten(sowas wie zbsp. "Waffe", "Panzerwagen", "Auto",...)liebe grüße
-
Ja du bist schon nah dran...
Du musst nicht für alles eine eigene Klasse erstellen! Der Begriff "Klasse" ist auch nich an alle existierenden Objekte gebunden, das kannst du gestalten wie du es möchtest...Klassen können auch Unterklassen haben...
Z.b:
Die Klasse "Fahrzeug" könnte als unterklasse einerseids "Panzer" und "Auto" haben...
Du kannst auch beliebig viele Objekte mit einer Klasse erstellen
also z.b. 20 Panzer 500 AutosAllerdings wirst du wenn du wirklich etways programmieren möchtest dass über eine einfach "Hallo Welt" Klasse hinausgeht, schon mehrere Klassen benötigen...soetwas kann schnell unübersichtlich werden...
Sieh dir nochmal ein Tutorial zu dem Thema an...(gibts genügend)
und versuch selbst dein Glück beim Programmieren
-
wieso unübersichtlich?
-
Klassen sind eine art Muster /Vorlage aus denen mit best. PArameter Objekt erzeugt werden...
Bsp.:
class Waffe{ public: int Staerke; char acName[100]; }; Waffe M4; M4.Stareke =50; M4.acName="M4"; Waffe ak47; M4.Stareke =60; M4.acName="Ak 47";nun hast du 2 Objekte basierend auf Klasse Waffe. Jedes Objekt repräsentiert nun eine Waffe anhand parameter...
-
wieso unübersichtlich?
Weil es zb. bei 20 Klassen (mit jeweils 10-15 Methoden) ne ganze Weile dauern kann bis man sich da eingelesen hat...