|
4
|
| kpollock · 技术社区 · 16 年前 |
|
|
1
3
从 MSDN :
默认值为
这就解释了为什么
注意你不能通过
所以我认为您不需要使用空引用测试方法。
如果你想让你的方法接受
|
|
|
2
3
日期时间变量不能为空。它不是引用类型,因此不会出现空引用异常。 你可以这样做:
下面是一个关于可空类型的链接: http://msdn.microsoft.com/en-us/library/1t3y8s4s%28VS.80%29.aspx 我想我明白你的要求了……在代码的情况下(特别是由于ref参数的原因,不能对带有ref或out的参数有差异)。它必须传递一个日期时间对象。它不能是其他任何东西…..因此必须将空参数转换为某些内容才能使函数工作。 |
|
|
3
2
|
|
|
4
1
invoke()方法获取目标方法参数的值数组。根据msdn,与 裁判 参数将用默认值初始化(在这种情况下 日期时间.minvalue )在目标方法调用之前。 此外,参数数组中与 裁判 参数将在目标方法调用后更新。 在您的情况下,您不应该使用 无效的 值,因为它不是 日期时间 数据类型。 这是来自msdn库中invoke方法文档的注释: “如果此实例表示的方法或构造函数接受一个ref参数,则该参数不需要任何特殊属性,以便使用此函数调用该方法或构造函数。 此数组中没有用值显式初始化的任何对象都将包含该对象类型的默认值。 对于引用类型元素,此值为空。 对于值类型元素,此值为0、0.0或false,具体取决于特定的元素类型。 他说:“这是一个很好的选择。” 还找到了本教程: Passing "ref" Parameters |
|
|
5
0
只有
reference types
可以为空。
DateTime
(像int、bool、structs和enums)是
Value Type
. 因此,datetime不能为空,就像枚举不能为空一样。你可以使用
Nullable generic
,声明为
|
|
|
6
-1
最后,在本例中,我认为我将继续这样一个概念,即方法实际上不需要测试,而不是空值,并且请注意,通过反射调用方法并不总是在直接函数调用时抛出异常。 其他人可能会发现可以为空的类型建议是有用的(尽管我认为到目前为止,每个人都在继续使用这些建议…) |
|
|
A B · C#Excel自动调整列避免长文本时出错 1 年前 |
|
|
Megrez7 · C#ToArray转换合并为一行,导致数组元素更改 1 年前 |
|
Aycon · 在工厂方法中释放部分创建的对象的正确方法是什么? 1 年前 |
|
|
Sei · Avalonia/WPF将路由器传递到控制模板 1 年前 |