' schrieb:Ja, aber ich meine sowas:
Du willst also wissen, warum beim Vergleich eines U16-Enums mit einem U16-Int bei U16-Enum ein Konvertierungspunkt erscheint?
Ganz einfach: U16-Enum und U16-Int sind zwei verschiedene Typen. Auch wenn die Bitbreite gleich ist, so ist ein Enum, sogar jeder verscheidene Enum, ein eigener Typ. Und das ist auch gut so. Es muss hier also ein Konvertierungspunkt erscheinen.
Enum-Typen wie auch Int-Typen haben eine Grenze: An dieser Grenze funktioniert - eigentlich - der Befehl succ(Value) bzw. pred(Value) nicht. Und da Enums eine unterschiedliche Länge (Anzahl Elemente) haben können, liegt auch diese Grenze bei jedem Typ anders. Daher sind die Typen nicht gleich. Es gibt z.B. Kompileroptionen, die auf Bereich testen (und bei Überschreiten eine AV werfen) - auch deshalb darf man Enums nicht mischen => Konvertierungspunkt.
Jetzt wolltest du aber wissen, warum bei diesem ULK-Element (
) kein Dot erscheint: Wer weiß, was die da reingebaut haben, die Softwarler von LV.
Zitat:wie kann ich ein universelles SubVI erstellen, das beliebigen Enum (als Typ) am Eingang hat und diesen Enum dann ausgibt?
So ganz verstehe ich das jetzt nicht. Einfach Eingang auf Ausgang geben?
Oder meinst du ohne Dot?
Ohne Dot würde theoretisch wie folgt gehen: Der Typ des Eingangs ist ein Typ, der für alle Enums identsich ist. Also sozusagen, wenn alle Enums von diesem einen Basistyp abgeleitet sind. Ob das irgendwie mit LVOOP gehen würde?