Abgesehen davon, ob wir Maßeinheiten für Einheitenlose Konzepte wie Winkel verwenden sollen, nehme ich an, dass ich degree
und radian
Einheiten in F # definiert habe
Ich kann sie relativ einfach benutzen wie
%Vor%Es scheint, als wären Mitglieder der Erweiterung noch handlicher. Also könnte ich einfach sagen
%Vor%Aber ich kann das Erweiterungselement nicht auf die offensichtliche Weise definieren
%Vor%... das bringt mir den folgenden Fehler
%Vor%Gibt es einen syntaktischen Trick für Erweiterungselemente in Maßeinheiten in F # oder wird die Funktion unterstützt?
F # -Erweiterungsmember unterscheiden sich von C # -Erweiterungsmembern dadurch, dass Sie Erweiterungen generierter Typen nicht definieren können. Zum Beispiel können Sie Erweiterungen für seq<'t>
, aber nicht für seq<int>
definieren. Mit anderen Worten, Erweiterungselemente verhalten sich eher wie Elemente des Typs als statische Methoden. Dies gilt auch für Maßtypen. Sie können also keine Erweiterung für float<degree>
definieren, aber Sie können eine Erweiterung für float<[<Measure>]'u>
definieren:
Allerdings sehe ich nicht, wie Ihnen das in Ihrem Fall hilft ...
Tags und Links f# extension-methods units-of-measurement