C++ wie kann ich Variablen in eine andere Klasse verschieben?

main.cpp - (Computer, programmieren) Spieler.h - (Computer, programmieren) Spieler.cpp - (Computer, programmieren) Gegner.h - (Computer, programmieren) Gegner.cpp - (Computer, programmieren)

3 Antworten

Vom Fragesteller als hilfreich ausgezeichnet

Ich würde für Spieler und Gegner eine gemeinsame Klasse anlegen, denn der Gegner ist ja auch ein Spieler, wenn auch virtuell, zB Ki-gesteuert.

Darin legst du eine public Funktion bzw Methode an, zb wirdangegriffen( int Stärke).  Diese rufst du nun in main oder einer anderen Klasse (zb Kampf) auf mit    Gegner -> wirdangegriffen(15); .

Wie der Gegner darauf reagiert (abzug der Lebenspunkte usw), wird innerhalb der Klasse in der Funktion wirdangegriffen bearbeitet.

Du kannst für jede Klasse sogenannte getter und setter verwenden. Bei get() gibst du die gewünschte Variable zurück und bei set() brauchst du einen Parameter, der dann die entsprechende Variable auf den wert des Parameters setzt.

Hope it helps :D

maximilianus7  30.04.2016, 10:51

wenn die setter und getter nicht mehr machen sind die überflüssig. und für einen absoluten anfänger nur verwirrend. es gibt ein religöse sekte die verbietet direkt auf public attribute zuzugreifen. die diskussion ersparen wir uns.

1

Wenn du virtuelle Variablen von Objekten von der main aus manipulieren willst,
dann hast du OOP nicht verstanden.

Und ich glaube die Konvention, dass man Variablennamen niemals groß schreibt, gilt auch in C++.