Hi, ich muss einen VectorIterator machen, also muss ich einen Vector mit einem beliebigen Typ akzeptieren. Ich versuche gerade den Typ als * so zu definieren:
%Vor%Aber der Compiler beschwert sich, dass der Typ "keine Kompilierzeitkonstante" ist. Ich weiß, dass ein Fehler mit der Vector-Klasse existiert, in der die Fehlerberichterstattung den falschen Typ als fehlend meldet, zum Beispiel:
%Vor%Wenn Sprite nicht importiert wurde, würde sich der Compiler darüber beschweren, dass die Vector-Klasse nicht gefunden werden kann. Ich frage mich, ob das zusammenhängt?
Es sieht also so aus, als ob die Antwort darin besteht, dass es keinen Weg gibt, einen Vektor eines Typs implizit in einen gültigen Super-Typ zu konvertieren. Es muss explizit mit dem globalen Vektor ausgeführt werden. & Lt; & gt; Funktion.
Also mein aktuelles Problem war eine Mischung von Problemen:)
Es ist richtig, Vector zu verwenden. als generische Referenz zu einem anderen Vektor, aber es kann nicht so ausgeführt werden:
%Vor%Die Zuweisung sollte mithilfe der globalen Vector () -Funktion / cast wie folgt durchgeführt werden:
%Vor%Es war ein einfacher Fall, dass ich die Dokumentation nicht gelesen habe.
Unten ist ein Testcode, ich würde den Vector erwarten. implizit in Vector umwandeln. & lt; * & gt;.
%Vor% Ich glaube, dass Sie sich auf einen untypisierten Vektor beziehen können, indem Sie einfach Vector
(no .<>
)
Mit Apache Flex 4.11.0 können Sie bereits machen, was Sie wollen. Es könnte dort seit 4.9.0 gewesen sein, aber ich habe das vorher nicht versucht.
Tags und Links generics vector actionscript-3 flex