Ich möchte den (/) Operator in F # für Strings überladen und die Bedeutung für Zahlen beibehalten.Überladungsoperator in F #: (/)
/// Combines to path strings
let (/) path1 path2 = Path.Combine(path1,path2)
let x = 3/4 // doesn't compile
Wenn ich folgendes versuchen erhalte ich „Warning 29 Verlängerungs-Mitglieder können nicht Betreiber Überlastungen sorgen. Betrachten wir die Betreiber im Rahmen der Typdefinition definieren, statt.“
/// Combines to path strings
type System.String with
static member (/) (path1,path2) = Path.Combine(path1,path2)
Irgendwelche Ideen?
Grüße, forki
Haben Sie versucht, es als op_Division definieren? UPDATE: macht nichts; Es wird nicht funktionieren – pblasucci
Ich glaube nicht, dass Sie Mitglieder (oder Operatoren) über bereits vorhandene Klassen überladen können. – Gabe