![]() |
1
401
编译器将空比较替换为对
|
![]() |
2
41
我更喜欢
|
![]() |
3
19
我用不同的方法为一个可以为空的int赋值,对此做了一些研究。下面是我做各种事情时发生的事情。应该弄清楚发生了什么。
记住:
下面是我运行的一些代码的描述,以及它在标签中生成的输出:
好,让我们尝试下一个初始化方法:
和以前一样。请记住,初始化时使用
同样,我们将从以下位置得到编译时错误:
更不用说了
但是,多形重载隐式转换运算符让我们可以这样做:
不必担心一词多义,不过,只要它正确就行了。:) |
![]() |
4
14
在VB.Net。如果可以使用“.hasValue”,请不要使用“isnot nothing”。我刚刚解决了一个“操作可能会破坏运行时”中的信任错误,将“isnot nothing”替换为“.hasValue”。我真的不明白为什么,但是编译器中发生了不同的事情。我假设“!C中的“=null”可能有相同的问题。 |
![]() |
5
1
如果您使用LINQ并且希望保持代码简短,我建议您始终使用
这就是为什么:
想象一下我们有课
如果在我们的代码中的某个地方,我们希望从foo集合中获取具有非空somedouble值的所有foo(假设集合中的某些foo也可以为空),那么最后我们至少有三种方法来编写函数(如果我们使用c 6):
在这种情况下,我建议总是选择短一点的 |
![]() |
6
-6
一般答案和经验法则:如果您有一个选项(例如,编写自定义序列化程序)来处理可在不同管道中为空的
基准测试:
基准代码:
https://github.com/dotnet/BenchmarkDotNet 被使用 聚苯乙烯 .人们说,建议“因为始终如一的思考而偏爱有价值”是不相关的和无用的。 你能预测这个的性能吗?
聚苯硫醚
人们继续减负,但没有人试图预测
|
![]() |
Dee J. Doena · 比较两个空可空值 8 年前 |
![]() |
Konrad Viltersten · 如何让EF理解某些列不可为空? 9 年前 |
![]() |
Muhammad Nasir · 空对象设计模式与空对象检查 9 年前 |
![]() |
checketts · 从可空对象创建流的惯用方法 9 年前 |