我有一些带有以下数组声明的C#代码.注意单?后Color.
private Color?[,] scratch;
Run Code Online (Sandbox Code Playgroud)
在我的调查中,我发现如果您有以下代码:
int? a;
Run Code Online (Sandbox Code Playgroud)
变量a未初始化.你何时何地使用它?
Hab*_*bib 17
?只是语法糖,它意味着该字段是Nullable.它实际上是短暂的Nullable<T>.
在C#和Visual Basic中,使用?将值类型标记为可为空?值类型后的表示法.例如,int?在C#或整数?在Visual Basic中声明一个可以指定为null的整数值类型.
您不能分配null值类型,int作为值类型不能保持null值,int?另一方面可以存储空值.
情况也是如此Color,因为它是一个结构(因此是值类型)并且它不能保存空值,而Color?[,]您正在创建一个可以为空的Color数组.
对于你的问题:
变量'a'未初始化.你何时何地使用它?
通过使用?with变量不会使其初始化为null任何其他值,它仍然必须初始化.
int? a = null;
int b = null;//error since b is not nullable
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5710 次 |
| 最近记录: |