[3.3.9.5] Fragen zu Strukturen

  • Ich wollte einfach mal fragen, ob es irgendwie möglich ist

    • Strukturen so zu verschachteln, dass man "von außen" weiterhin Zugriff auf alle Elemente hat, z.B. Struct1.Struct2.Element
    • Funktionen in Strukturen abzuspeichern, genauso wie man sie in Variablen speichern kann, z.B. System.out.print = ConsoleWrite


    Hier findet ihr einige meiner bisherigen Versuche, die meine Fragen hoffentlich etwas klarer machen.

    MfG, James

    PS: Ja, ich bin mir bewusst, dass wir nicht versuchen sollen Objekte zum imitieren, frage aber trotzdem. :D

  • In deinem Beispiel fehlt noch die Zeile "print = ConsoleWrite" am Anfang.

    Structs sind keine Klassen, auch wenn sie in machen Sprachen so benutzt werden. Ergo wird das hier nicht möglich sein:

    [autoit]

    This.That = ConsoleWrite

    [/autoit]

    Die Multi-Inheritance (This.That.Those) wird nur von echten Objekten unterstützt. Ich hab damit auch schon nahezu alles versucht. Aber vielleicht findet noch jemand eine einfache Lösung ^^

  • Ich weiß nicht ob es sinnvoll ist, sich mit dieser (zurückgezogenen) Beta auseinanderzusetzen. Im Moment weiß niemand wohin die Reise geht. Ich würde also erstmal abwarten was denn tatsächlich Einzug in die nächste Version hält.


    Stimmt natürlich, nur werde ich wahrscheinlich so schnell kein Update auf irgendeine andere Version machen.
    (Und je nach dem wie ich mich mit anderen Sprachen anstelle dann vielleicht überhaupt kein AutoIt mehr benutzen.)


    Bei Skripten, die ich hier im Forum poste, werde ich natürlich darauf achten, dass diese mit der aktuellen Version funktionieren.
    Mein Interesse entspringt eigentlich allein diesem Kommentar. :D

  • Ich weiß nicht ob es sinnvoll ist, sich mit dieser (zurückgezogenen) Beta auseinanderzusetzen. Im Moment weiß niemand wohin die Reise geht. Ich würde also erstmal abwarten was denn tatsächlich Einzug in die nächste Version hält.


    Genau diese Tatsache ist grausam. Wenn der Kram nicht unterstützt wird, update ich nicht.
    Aus dem einfachen Grund: Angenommen die (neue) 9.5 enthält diese Erweiterungen nicht, was enthält sie dann außer Bugfixes die mich nicht betreffen ?
    Habe bisher kaum "echte" Bugs in AutoIt gehabt. Also nichts was sich nicht beheben ließe.

  • Was jahrelang durch AutoIt-Object erprobt und begrüßt wurde und dann auf Drängen eines Devs endlich in AutoIt übernommen wurde soll nun einfach wieder wegfallen? Das ist sicher kein Fortschritt.

    Structs und deren Objekt-Zugriff sind die Grundständigsten Elemente des BASIC-Paradigmas. Und was sich BASIC-Dialekt schimpft, sollte das auch berücksichtigen ^^

    My 2 Cent.

    @Topic Ich hab nun wirklich fast alles durch und komme zum Schluss, dass es nicht möglich ist.

  • Ja klar. Beim Portieren von VisualBasic Programmen, bei denen die Structs TYPEn sind. Dort geht auch sowas:

    Das ist leider (leider) in AutoIt nicht möglich. Dann muss man wieder auf Arrays aus Structs oder mehrdimensionale Arrays (höllen-langsam) zurückgreifen.


    Bedenke: Keiner verbietet dir AO zu benutzen ;)

  • Hi,
    Nested Structs habe ich schon mit Hilfe dieses Scripts benutzt.
    Btw. mehr OOP braucht kein Mensch^^