В F # нет ярлыка для создания свойства get
/ set
, но если вам нужно свойство только с get
, вы можете использовать следующий простой синтаксис:
type Test(n) =
let myValue = n * 2
member x.Property =
// Evaluated each time you access property value
myValue + 5
, так как F #является функциональным языком, типы F # очень часто неизменяемы.Этот синтаксис позволяет очень легко определять неизменяемые типы, поэтому он также рекомендует использовать хороший функциональный стиль программирования в F #.
Однако я согласен, что ярлык для свойства get
/ set
будеточень полезно, особенно при написании кода, который должен взаимодействовать с C # / другими библиотеками .NET.
EDIT (5 лет спустя ...): это было добавлено в F # 3.0,как показывает ответ Бена: -)