Syntax der Objektinitialisierung
Ich bin gerade erst mit F# und ich kann nicht finden, die syntax zu tun, Objekt-Initialisierung wie in C# 3.
I. e. gegeben:
public class Person {
public DateTime BirthDate { get; set; }
public string Name { get; set; }
}
wie Schreibe ich das folgende in F#:
var p = new Person { Name = "John", BirthDate = DateTime.Now };
InformationsquelleAutor der Frage Mauricio Scheffer | 2008-12-16
Du musst angemeldet sein, um einen Kommentar abzugeben.
Kannst du es so machen:
InformationsquelleAutor der Antwort CMS
die Antwort von CMS ist definitiv richtig. Hier ist nur eine Ergänzung, die vielleicht auch hilfreich. In F# oft möchten Sie schreiben Sie den Typ, die nur mit unveränderlichen Eigenschaften. Wenn Sie den "Objekt-Initialisierer" syntax, die Eigenschaften müssen verändert werden. Eine alternative in F# ist die Verwendung von benannten Argumenten, die Ihnen eine ähnliche syntax, aber hält die Dinge unveränderlich:
Nun können wir schreiben:
Den code erfordert, dass Sie den Namen angeben, aber Geburtstag ist ein optionales argument, mit einigen default-Wert.
InformationsquelleAutor der Antwort Tomas Petricek