String Var aus Type -> Inhalt aus globaler String Var
Übersicht

![]() |
DaysShadowBetreff: String Var aus Type -> Inhalt aus globaler String Var |
![]() Antworten mit Zitat ![]() |
---|---|---|
Der Titel mag komisch sein, mir fiel einfach nichts passendes knackiges ein.
Folgender Code stellt mein Problem dar, ich habe einen Type der eine String Variable hat, die im Prinzip aber stets den Inhalt einer globalen Variablen anzeigen soll. Wie bekomme ich das hin? String Ptr gibt es nicht, ist auch an sich klar, ein String hat ja keine feste Größe, daher lässt sich da schlecht irgendwo hinzeigen bzw. hinzeigen schon, nur kommt man ohne die Länge des Strings nicht wieder an den Inhalt... Also vom Prinzip soll _text immer den Inhalt einer globalen String Variable enthalten, ohne dass ich irgendwo einen Funktionsaufruf mit entsprechender Zuweisung habe. Geht sowas? Denke ich vllt. auch viel zu kompliziert? ![]() BlitzMax: [AUSKLAPPEN] SuperStrict Ich bedanke mich schonmal ![]() |
||
Blessed is the mind too small for doubt |
undefined |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
"String-Pointer" musst Du Dir leider selberbasteln. Entweder über eine Objektklasse oder eine Map. Beides funktioniert dann nur über Umwege, ist ansich aber nicht wirklich umständlich.
1) Ein TString-Objekt, dass den String in einem Feld speichert. Alle "Pointer" sind nun keine Strings mehr, sondern verweisen auf das entsprechende TString-Objekt. 2) Eine Map, in der Du alle notwendigen, globalen Strings speicherst. Für die Einträge wählst Du als Namen die Bezeichner des globalen Strings und als Werte eben die gewünschten Texte. Alle "String-Pointer" bleiben Strings und speichern den Bezeichner, auf den sie verlinken sollen. Über diesen holst Du Dir dann aus der Map den zugehörigen Texteintrag. Mit 2-3 Hilfsfunktionen/-methoden sind beide Möglichkeiten gut und einfach umzusetzen. |
||
![]() |
DaysShadow |
![]() Antworten mit Zitat ![]() |
---|---|---|
Danke sehr, das hat sehr geholfen und ich denke mein Problem ist schon damit auch schon gelöst ![]() |
||
Blessed is the mind too small for doubt |
![]() |
mpmxyz |
![]() Antworten mit Zitat ![]() |
---|---|---|
Es ist auch möglich, über ein Objekt auf globale Type-Variablen zuzugreifen:
BlitzMax: [AUSKLAPPEN] Type TTest Wenn du immer nur den einen gleichen Wert an verschiedenen Stellen haben möchtest, ist es aber sowieso nicht richtig, mehrere Variablen dafür einzuführen. Wenn du mehrere zu aktualisierende Variablen hast, kannst du dir auch etwas mit Arrays zusammenbasteln. Diese sind dann eine vereinfachte TString-Objektvariante. mfG mpmxyz |
||
Moin Moin!
Projekte: DBPC CodeCruncher Mandelbrot-Renderer |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group