Objekte einer Klasse mit frei wählbarem namen
-
Bin Anfänger und habe eine Frage bezüglich Klassen und strings.
Habe alles durchsucht und nichts gefunden.Der Benutzer soll die möglichkeit haben Objekte einer Klasse mit frei wählbarem Namen zu erstellen. Ich denke der Code erklärt meine Frage am besten.
class person { char fname[20]; char lname[20]; int age; } person tim; //so funktioniert eschar eingabe[20]; class person { char fname[20]; char lname[20]; int age; } cin>>eingabe; person eingabe; //geht nichtMfG
-
gibt keine variablen variablennamen in c++.
-
Hallo
Wozu muss der Benutzer denn den Namen der Varaiblen wissen? Du kannst deiner Klasse ja auch immer einen std::string spendieren, der den, vom Benutzer, eingegeben Namen speichert.
chrische
-
Der Benutzer soll nicht den Namen wissen sondern den Namen über eine Eingabe bestimmen. ich will sozusagen ein Objekt der Klasse erstellen, dass den Inhalt einer String-Variablen trägt; und diese wird vom Benutzer eingegeben.
-
Und wo ist da der Sinn dabei?
-
Hallo
Squawking schrieb:
Der Benutzer soll nicht den Namen wissen sondern den Namen über eine Eingabe bestimmen. ich will sozusagen ein Objekt der Klasse erstellen, dass den Inhalt einer String-Variablen trägt; und diese wird vom Benutzer eingegeben.
Warum sollte der Benutzer denn bestimmen, wie die Variablen heißen?
chrische
-
Ich habe vor eine Art Adreesbuch zu programmieren. Dazu soll zu jeder Person ein Objekt der Klasse erstellt werden. Diese Objekte sollen den Vornamen der Person tragen, damit man später als benutzer bequem darauf zugreifen kann, um die Daten dieser Person(wie z.B. Alter oder Nachname) abzurufen. Deshalb möchte ich, dass die Objekte den vom Benutzer eingegebenen Namen tragen.
Gibt der Benutzer den Namen "Dieter" ein, so soll ein Objekt der Klasse mit dem Namen Dieter erstellen werden. Bei anderen Eingaben gilt natürlich entsprechendes.
-
Hallo
Da jedes Objekt doch wahrscheinlich einen string für den Namen hat, reicht es doch vollkommen diesen auf den, vom Benutzer eingegeben, zu setzen. Das hat auch den Vorteil, dass du alle Personenobjekte in eine std::list packen kannst und dann super über diese iterieren kannst.
chrische
-
hört sich eher danach an, dass du nach einer anderen datenstruktur suchst...
schau dir die "map" aus der stl mal an. ich denke, sie könnte deinem problem entsprechen.
andernfalls:
den objekten selbstgewählte namen zu geben, reicht über eine membervariable (ich rate zur klasse string aus dem namensraum std)ansonsten ein vector oder array für die objekte erstellen.. oder ähnliches..
ps: oder list.. ich war zu langsam *g
