я привык писать код, как это в C#:Как написать этот C# код в F #
SomeObj obj;
try{
// this may throw SomeException
obj = GetSomeObj();
}catch(SomeException){
// Log error...
obj = GetSomeDefaultValue();
}
obj.DoSomething();
Это, как я перевел его в F # (объект является список):
let mutable obj = []
try
obj <- getSomeObj
with
| ex ->
// Log ex
obj <- getSomeDefaultValue
doSomething obj
Есть ли способ сделать это в F # без использования изменяемой переменной? Есть ли более «элегантный» способ справиться с этой ситуацией в F #?
Спасибо!
Отлично! Я знал, что должен быть способ сделать это с помощью F #! Я изучаю F #, и я до сих пор не привык мыслить функционально. Спасибо! –