Variablen aus der Laufzeit kreiren und in Datei speichern
-
Guten Abend zusammen,
ich möchte während der Laufzeit des Programms Variablen erstellen die dann in einer Textdatei abgespeichert werden.Dazu gibt es einige Fragen zu klären:
1. Wie erstellt man Variablen während der Laufzeit
2. Wie schaffe ich es dass der Variablenname variiert also z.b wenn
eine Variable erstellt wird heisst sie "variable1" die zweite "variable2"
etc.(ich muss ja nach programm neustart auf sie zurückgreifen können).
3.Ist es Standart c++?MfG Travis
-
Um dem Variablen Problem zu entgehen könntest du:
ein Array mit 100 Elementen anlegen, falls in deiner Laufzeit mehr Variablen benötigt werden sollten, dann legst du eben mehr fest (200, oder programmierst es dynamisch).
-
Du könntest als ein Fileformat erstellen.
Im Header steht, wie viele Variablen das Programm anlegen soll.
-
TravisG schrieb:
1. Wie erstellt man Variablen während der Laufzeit
Dynamisch mit Pointern und new.
TravisG schrieb:
2. Wie schaffe ich es dass der Variablenname variiert also z.b wenn
eine Variable erstellt wird heisst sie "variable1" die zweite "variable2"
etc.(ich muss ja nach programm neustart auf sie zurückgreifen können).Zur Laufzeit nur über Lösungen wie eine String->String-Map, siehe hier
-
Wäre eine Möglichkeit, jedoch möchte ich möglichst viele Aspekte von c++ kennenlernen... wäre dankbar für eine Antwort auf die Fragen ^^
edit: lol schon wieder 3 antworten innerhalb einer minute^^
edit 2: ein konkretes Beispiel: In einem Editor (z.B für ein Spiel) erzeugt der Mapper sehr viele verschiedene Objekte(z.B. Bäume)... Der Entwickler des Editors kann doch schlecht für 10000 Bäume Variablen anlegen um sicher zu gehen, dass das Programm nicht abstürzt wenn der Mapper zu viele Bäume setzt.
Wie realisiert man sowaS?
-
Kann man wunderbar in ner map< string, baumobjekt > speichern und jeder Baum bekommt nen Namen oder ne ID, welche einzigartig ist und über die kommt man wieder an das Objekt, oder alternativ ne liste (std::list zb)
-
wenn du mir jetzt noch sagen könntest wie das geht (einen Beispielcode z.B) wäre ich vollkommen zufrieden ^^
-
Zum Beispiel so - den Rest müsstest du selber ergänzen:
#include <map> //für die Verwaltung #include <string> #include "baum.h" //Definition der Baum-Klasse 'TBaum' using namespace std; class TWorld { map<string,TBaum> Baeume; public: void insert_baum(const string& name,const TBaum nBaum) { Baeume[name]=nBaum; } void edit_world() { //... if(/*Baum eingefügt*/) { string n=get_unique_name(); TBaum b=TBaum(baumtyp,groeße,...); insert_baum(n,b); } } };