CX_VALUE::Convert
Beschreibung:
Diese Funktion konvertiert einen Wert in einen anderen. Dazu wird die Zieleinheit, in die konvertiert werden soll, übergeben. Dieses setzt voraus, dass die Ausgangseinheit in die Zieleinheit umgerechnet werden kann.
Convert verändert das Objekt nicht und liefert ein neues CX_VALUE-Objekt zurück.
Die Anzahl der Nachkommastellen (precision) ergibt sich aus der tatsächlichen Zahl der vorhandenen Nachkommastellen im numerischen Wert der Zahl. Falls die Zieleinheit eine einfache Einheit ist, und eine Anzahl an Nachkommastellen definiert, dann hat die Zahl mindestens so viele Nachkommastellen, wie in der Einheit definiert.
Code-Beispiel:
Var(value)
12m -> value
"mm" value Call(Convert) // Ergebnis: CX_VALUE 12000mm
Convert wird intern auf die Addition mit dem Nullwert der Zieleinheit zurückgeführt. Konkret ist der Aufruf von Convert äquivalent zu folgender Aufruffolge:
"<unit>" value Call(Convert) // <-> CreateTransObject(CX_VALUE) "x" Over Put // Intialize value to "0 <unit>" value + // perform conversion via addition Call(PrecisionAdjusted) // adjust precision
Stack | Position | Objekttyp | Kurzbeschreibung |
---|---|---|---|
Stack(IN) | Top | CX_VALUE | der Wert |
Top-1 | STRING | Zieleinheit | |
Stack(OUT) | Top | CX_VALUE | Rückgabewert |