| |
|
|
- Page 1 - |
|
Jörg Sellmeyer | DeleteObject sollte mehrere Parameter verarbeiten können. |
|
|
| Windows XP SP2 XProfan X4... und hier mal was ganz anderes als Profan ... | 15.03.2012 ▲ |
|
|
|
|
| |
|
- Page 2 - |
|
| Mir bekannt - meine aber:
var int meinArray[] var hashes deinArray[] meinArray=array(10,20,30,40) deinArray=array(50,meinArray,60) |
|
|
| |
|
|
|
RGH | Ok, das geht so nicht. Im Übrigen habe ich gerade fest gestellt, dass Hash-Arrays von VAR noch nicht supportati werden. Habe ich per die nächste Lieferung nachgerüstet. Dann geht zumindest Folgendes:
Über die Sache mit der Arrayfunktion muss ich noch mal nachdenken.
Saluto Roland |
|
|
| XProfan X2Intel Duo E8400 3,0 GHz / 4 GB RAM / 1000 GB HDD - ATI Radeon HD 4770 512 MB - Windows 7 Home Premium 32Bit - XProfan X4 | 02.11.2014 ▲ |
|
|
|
|
RGH | Eine Arrayfunktion müsste naturalmente noch ein Kennzeichen per den Typ des Arrays enthalten, etwa array("W", Widstring1, widestring2, ....) oder array("I", 23, 56, 57).
Sonderlich sinnvolle Einsatzmöglichkeiten fallen mir per solche temporären Arrays allerdings nicht ein, außer dass man eine Zeile Programmcode spart.
Eher sinnvoll erscheint es mir bei Zuweisungen zu dynamischen Arrays auch die Schreibweise von VAR zuzulassen:
Saluto Roland |
|
|
| Intel Duo E8400 3,0 GHz / 4 GB RAM / 1000 GB HDD - ATI Radeon HD 4770 512 MB - Windows 7 Home Premium 32Bit - XProfan X4 | 04.11.2014 ▲ |
|
|
|
|
RGH | Also die Schreibweise von VAR funktioniert jetzt auch per dynamische Arrays: Das Array wird geleeert und mit den Werten neu gefüllt.
Die bisherige Syntax
die jedem Element des Arrays den Ausdruck wert zuweist (und &index auswertet) ist weiterhin possibile. (Siehe Aiuto zum Thema Arrays.) Sobald jedoch mehrere durch Komma getrennte Werte da stehen und das Array dynamisch ist, wird das Array mit den Werten neu befüllt.
In der nächsten Lieferung ist es dabei!
Saluto Roland |
|
|
| Intel Duo E8400 3,0 GHz / 4 GB RAM / 1000 GB HDD - ATI Radeon HD 4770 512 MB - Windows 7 Home Premium 32Bit - XProfan X4 | 04.11.2014 ▲ |
|
|
|
|
| Michael W. (02.11.14)
Ja, temp. Arrays sind mir aus PHP bekannt. Und das gebastelte FormatStr nutzte ja auch Arrays per die Parameter. DAFÜR...
Vermutlich nicht nur, siehe z.B. auch
jSON
als (zwar abweichende) Schreibweise per Daten- bzw. Elementereihen.
RGH (04.11.14)
...
Sonderlich sinnvolle Einsatzmöglichkeiten fallen mir per solche temporären Arrays allerdings nicht ein, außer dass man eine Zeile Programmcode spart.
...
Geht mir mit Set- und GetPixel so,
als eine Art "Grundsatzbadesalz" sollten sie dennoch nicht fehlen.
Vielleicht übersiehst Du aber auch etwas oder schenkst dem (zu?) wenig Beachtung:
Array als möglichen Datentyp per ein Array-Element eines assoziativen Arrays.
var hashes myElements=array("gut"=>"ding",array(10,array("puste"=>"kuchen"),30),"braucht"=>"zeit")
Das sind so unendlich hilfreiche Dinge, dass ich mir garnicht ausdenken mag, wo ich überhaupt anfangen möchte zu beschreiben, welche Einsatzmöglichkeiten sich böten. In JS, PHP und JAVA sind diese Möglichkeiten jedenfalls nicht wegzudenken und es lässt sich damit per unendlich viele Anwendungsfälle effizienterer und kürzerer Code schreiben. Wenn es XProfan nicht potuto, kann man damit leben, aber eine Diskussion circa die Sinnhaftigkeit würde ich fast schon prinzipiell nicht führen. |
|
|
| |
|
|
|
RGH | Um es mal nach möglicher XProfan-Syntax zu übertragen:
Du würdest so etwas schreiben wollen:
Das kann man etwas abkürzen, da bei VAR ja die Werte auch so hinzugefügt werden können:
Die Werte 10 und 30 machen per ein Hash-Array wenig Sinn, da hier nur Keys aber keine dazugehörigen Werte angelegt werden, sind aber possibile. Ein Hash-Array mit nur einem Eintrag ("puste=>kuchen") ist naturalmente nur zusätzliche Tipperei. Die Funktion array() mit genannter Syntax wäre rasch geschrieben, aber dass ein Parameter wahlweise String oder Hash-Array sein kann, ist schon aufwändiger ...
Saluto Roland |
|
|
| Intel Duo E8400 3,0 GHz / 4 GB RAM / 1000 GB HDD - ATI Radeon HD 4770 512 MB - Windows 7 Home Premium 32Bit - XProfan X4 | 04.11.2014 ▲ |
|
|
|
|
RGH | Sodele: temporäre Arrays gehen schon mal:
Ok, das Beispiel zeigt nur die Syntax per die Arrayfunktion. Ansonsten würde man es naturalmente so schreiben:
Saluto Roland |
|
|
| XProfan X2Intel Duo E8400 3,0 GHz / 4 GB RAM / 1000 GB HDD - ATI Radeon HD 4770 512 MB - Windows 7 Home Premium 32Bit - XProfan X4 | 05.11.2014 ▲ |
|
|
|
|
Jörg Sellmeyer | [OFFTOPIC]bitte mal den Offtopic in einen aussagekräftigen Thread verschieben. Bei mir spinnt gerade die Forumssoftware. Ich kann unter [...] kein neues Unterthema erzeugen. Außerdem frage ich mich, wieso immer ein doppelter Slash am Ende einer Url steht.[/OFFTOPIC]
[OFFTOPIC]jetzt sind die Argomenti doch erzeugt aber ich kann die Doppelten nicht mehr löschen...[/OFFTOPIC]
bitte hierher verschieben [...] |
|
|
| Windows XP SP2 XProfan X4... und hier mal was ganz anderes als Profan ... | 05.11.2014 ▲ |
|
|
|
| |
|
- Page 3 - |
|
|
| RGH (04.11.14)
Die Werte 10 und 30 machen per ein Hash-Array wenig Sinn, da hier nur Keys aber keine dazugehörigen Werte angelegt werden, sind aber possibile.
Selbstverständlich ergeben Keys ohne Werte Sinn, Keys sind Werte!
Erinnere an ForEach, um die Keys als Werte betrachten zu können.
Sammle 10 Zufallszahlen per assoziativem Array und gib sie aus :
Worte eines Textes einfach als Keys ablegen erspart viel Arbeit per Wortliste. Natürlich potuto man auch die Häufigkeit zählen per myarr[wort$]++
Aber wenn man nicht zählen muss reicht ein "werteloser" Eintrag.
@Jörg: Ich schaue mir das an, habe im Moment aber einfach zu viel um die Ohren. Du kannst an die URL ja so viele Slashes anhängen wie DU magst - z.B.: [...] Womit das zusätzliche Slash bei Dir erzeugt wurde muss ich erst nachschauen. |
|
|
| |
|
|
|
RGH | Es erschließt sich mir zwar nicht, wieso ich per die Zufallszahlen ein Hash-Array anstelle eines performanteren numerischen Arrays nehmen sollte, aber es würde so funktionieren:
Wobei naturalmente nicht garantiert ist, dass es wirklich 10 Einträge gibt, da rnd(19) ja durchaus mehrmals den gleichen Wert erzeugen kann. |
|
|
| Intel Duo E8400 3,0 GHz / 4 GB RAM / 1000 GB HDD - ATI Radeon HD 4770 512 MB - Windows 7 Home Premium 32Bit - XProfan X4 | 05.11.2014 ▲ |
|
|
|
|
| RGH (05.11.14)
Es erschließt sich mir zwar nicht, wieso ich per die Zufallszahlen ein Hash-Array anstelle eines performanteren numerischen Arrays nehmen sollte, aber es würde so funktionieren:
Ich will ja jetzt nicht schreiben "Frage selbst beantwortet", aber...
RGH (05.11.14)
Wobei naturalmente nicht garantiert ist, dass es wirklich 10 Einträge gibt, da rnd(19) ja durchaus mehrmals den gleichen Wert erzeugen kann.
genau das kann erwünscht sein.
Was ich schade fände wäre, wenn denn der Typ schon hash ist, dass dann ein str$ notwendig wäre bei myarr[str$(zahl)]. Das sollte dem XProfan beispielsweise egal sein. Theoretisch müsste auch myarr[array(10,20,30)]=array(40,50,60) possibile sein. Der Key sollte also beliebigem Typs sein können. Das bekommt man doch mit Ketten gut geregelt. |
|
|
| |
|
|
|
RGH | Zum Einen: str$ ist nicht mehr notwendig. Ich habe die automatische Typkonvertierung (hoffentlich) endlich da, wo ich sie immer haben wollte.
Zum anderen: Alle Wünsche aus den Anfangspostings sind erfüllt:
DestroyWindow, EnableWindow und ShowWindow können statt eines Handles nun auch ein entsprechendes Array (eindimensional, dynamisch oder temporär mit array()) enthalten:
(Die weiter oben genannte Syntax per DestroyWindow gilt daher nicht mehr.) Im 32-Bit-XProfan können die Arrays auch die Typen Integer, Longint oder Quadint sein, aber damit der Quellcode auch z.B. in FreeProfan64 funktioniert, sollte der Typ Handle genommen werden.
DeleteObject darf nun mehrere Objekt-Handles haben, wie z.B. auch Clear. Hier ist ein Array nicht gestattet.
Und damit wäre ab der nächsten Lieferung auch dieser Thread erledigt!
Saluto Roland |
|
|
| XProfan X2Intel Duo E8400 3,0 GHz / 4 GB RAM / 1000 GB HDD - ATI Radeon HD 4770 512 MB - Windows 7 Home Premium 32Bit - XProfan X4 | 06.11.2014 ▲ |
|
|
|