相关疑难解决方法(0)

是什么 "??" 运营商?

我想知道代码中的??标志C#.它是为了什么?我该如何使用它?

怎么样int??它是一个可以为空的int吗?

也可以看看:

?? Null Coalescing Operator - >合并是什么意思?

c# coalesce operators null-coalescing-operator

31
推荐指数
7
解决办法
2729
查看次数

C#有多大用处?运营商?

所以我一直对这个感兴趣?运营商,但仍然无法使用它.当我做的事情时,我通常会想到:

var x = (someObject as someType).someMember;
Run Code Online (Sandbox Code Playgroud)

如果someObject有效且someMember为null,我可以这样做

var x = (someObject as someType).someMember ?? defaultValue;
Run Code Online (Sandbox Code Playgroud)

但是当someObject为null时,我几乎总是遇到问题,而且?? 并没有帮助我使这个更清洁,而不是自己做空检查.

你们找到了什么用途?在实际情况?

c# syntactic-sugar

24
推荐指数
6
解决办法
6468
查看次数

null合并运算符是否将结果缓存在c#中

我知道这样做(myValue ?? new SomeClass())很像(myValue == null ? new SomeClass() : myValue)

但出于好奇,当我调用一个函数时,是否有任何性能优势 (getResult() ?? new SomeClass()).会getResult()被执行两次吗?这似乎不直观,因为我只指定了一次方法调用.

c# null-coalescing-operator

10
推荐指数
1
解决办法
344
查看次数