ноль с приведением против Unchecked.defaultof? - PullRequest
2 голосов
/ 12 мая 2019

Я сталкивался с двумя способами создания правильно набранного null значения в F #:

// null with cast
let mutable x = null :> MyReferenceType

// Unchecked.defaultof
let mutable x = Unchecked.defaultof<MyReferenceType>

Есть ли основания отдавать предпочтение одному над другим?

1 Ответ

4 голосов
/ 12 мая 2019

Нет никакой разницы, иногда есть только несколько способов сделать что-то.Но обычно Unchecked.defaultof () используется в общем контексте, где вы заранее не знаете тип и не знаете значения по умолчанию.Вы наверняка знаете, что по умолчанию для MyReferenceType установлено значение null.Так что я бы пошел с первой декларацией.И на самом деле, даже это немного уродливо, с актерами.Большинство людей, вероятно, просто напишут это как

let x : MyReferenceType = null
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...