Neue Klasse erzeugen mit Varaiblennamen die aus Datei gelesen werden



  • Ach noch was. Wie kann ich denn ein Variable ode ein Array global anlegen?

    Gar nicht. Das gehört sich nicht.

    Da sehe ich doch, dass die ganzen Felder der Arrays als double sind. Ich wollte doch aber der Klasse erst mal Variablennamen zuordnen

    Tja, die Namen sind jetzt halt Indizes geworden.
    Wenn Du eine Zuordnung Name zu Wert brauchst, dann nimm ein Dictionary<...>.

    Simon



  • Also, so ie es aussieht war wohl das ganze ein Verständnisproblem, oder? Es wird also nicht funktionieren, eine Klasse automatisch zu erstellen, so wie ich das vorhabe. Wie gesagt, meine Idee war halt, ein Klassenkonstrukt zu erzeugen, dann die Textvariablen von der textdatei einlesen und die Klasse hat somit ihre internen Klassenvariablennamen. Dann sollten eben die double-werte zugewiesen werden. Somit hätte ich halt immer einen einfachen Zugriff auf die Variablen. Aber ich muß ja die Variablen der Klasse abrufen und setzen können. Da stellt sich dann das Problem mit dem Get() und Set() Befehl. Ich müßte ja dann mit Zeiger arbeiten, falls das funktioniert. Evtl. nehme ich einfach ein Array und trage lese die Werte dann hinein. Das Problem ist halt, dieses Array steht dann nicht in der ganzen Form.h zur Verfügung. Gibts da noch bessere Ansätze? Ansonsten könnte ich die Klasse auch händisch anlegen, wird normal nicht allzuviel verändert werden, aber wie mache ich das dann mit dem Zugriff, mittels einer Funktion?



  • Ja, lege doch dei Klasse an, mit all ihren double variablen.
    Dann liest du eben das file ein und weist den variablen den wert zu.

    Klassen (bzw. Code) zu Laufzeit zu erzeugen ist schon möglich, jedoch denke ich nicht, dass diese Technik hier angebracht ist.

    Simon



  • Mach das doch in C#, oder nicht Simon?

    Gruß



  • Soll das in C# soviel einfacher sein? Gits dazu einen Link? Eigntlich sollte das Projekt schon in C++ sein, habe mich mehr oder weniger auch schon eingearbeitet.

    Gruß
    Moehrle



  • *g*



  • Hallo,

    nach etlichem hin und her habe ich mich entschlossen, einfach eine Klasse zu erzeugen, die alle Variablen als public besitzt und ich dann daruaf zugreifen kann. Ich weiß, ist gefährlich, sollte aber zu einem späteren Zeitpunkt noch andes realisiert werden. Nun habe ich die Klasse angelegt. So, wenn ich jetzt aber die Klasse in der Form.h in veschiedenen Button-Ereignissen verwenden möchte, funktioniert das nicht, da die Klasse nur dort verfügbar ist, wo ich eine Klasse davon erzeuge. Wer weiß Rat, das ich die Klasse überall verwenden kann?



  • Ich denke, Du bringst einige Begriffe durcheinander.
    Informiere dich über Klassen, Instanzen, Objekte, Variablen (Member, Instanz, Klassen), Methoden etc.

    Auf die Schnelle könntest Du mit dem Singleton Pattern arbeiten, welches besagt, dass es von einer Klasse genau 1 Instanz gibt. Auf die kann dann einfach zugeriffen werden. Google danach, Du wirst bestimmt fündig.

    Edit:
    Eigentlich ist es aber immer dasselbe. Du hast letzendlich ein Objekt, auf das andere Objekte zugreifen sollen. Jetzt gibts verschiedene Möglichkeiten das zu realisieren. Via Parameter, Referenzen, Delegaten etc.

    Simon



  • Noch etwas, wenn ich Funktionen festlege. Sind die dann in der Form.h auch nicht mehr global nutzbar, oder wie wird das realisiert? Dann auch über Klassenfunktionen?



  • Informiere dich über Klassen, Instanzen, Objekte, Variablen (Member, Instanz, Klassen), Methoden etc.



  • Hallo, habe das mit der Klasse nochmals überflogen. Habe aber nirgendwo etwas dazu gefunden, wie man das macht, wenn man eine Form.h hat, wie eine Klasse überall zur Verfügugn gestellt werden kann. Gibts da ein Trick? In herkömmlichen C++ binde ich die Headerdatei der Klasse vor der Main()-Routine ein. Dann habe ichdie in der kompletten Main zur Verfügung. Und das ist jetzt eigentlich ein Problem das ich habe. Das scheint wohl auf diese Art und Weise nicht mehr zu funktionieren wenn man ein Projekt mit der Window-Form erstellt. Oder evtl. doch? Finde in meinem beiden Büchern über c++ .Net nichts dazu, und habe heute morgen sonst noch ein wenig rumgesucht.

    Gruß
    Moehrle


Anmelden zum Antworten