作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我试图弄清楚这两种懒惰的用法有什么区别,哪种更适合使用,还是一样?
Dim context As New Lazy(Of DbContext)
Dim context As Lazy(Of DbContext) = New Lazy(Of DbContext)(Function() New DbContext())
最佳答案
如果 lambda 只使用默认构造函数构造实例,则效果与 Lazy<T>
的构造函数相同。没有委托(delegate)只使用类型的默认构造函数。在这种情况下,我会使用您的第一个选项。
然而,第二个选项的原因是您有时需要更多信息来构建您的对象。例如,这将是合法的并且可以正常运行:
Dim instance = New Lazy(Of SomeType)(Function() New SomeType("Foo"))
SomeType
使用了非默认构造函数。 .
关于vb.net - Lazy(Of T) 使用/初始化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14595046/
我是一名优秀的程序员,十分优秀!