升级建议:使用 Date 数据类型存储日期

更新:2007 年 11 月

Visual Basic 的早期版本支持使用 Double 数据类型存储和处理日期。在 Visual Basic 2008 中则不应这样做,因为日期在内部不存储为 double 类型。例如,下面的语句在 Visual Basic 6.0 中有效,但在 Visual Basic 2008 中却可能导致编译错误:

Dim dbl As Double
Dim dat As Date
dat = Now
'BAD: Date can't be assigned to a double
dbl = dat
'BAD: Double can't be used in date functions
dbl = DateAdd("d", 1, dbl)
'BAD: CDate can't convert a double to a date
dat = CDate(dbl)

.NET Framework 提供 ToOADateFromOADate 函数在 double 类型和 date 类型之间进行转换。但是,将项目升级到 Visual Basic 2008 时,很难确定使用 double 类型存储日期的代码的意图。若要避免对 Visual Basic 2008 中的代码进行不必要的修改,请始终使用 Date 数据类型存储日期。

请参见

其他资源

有关升级的语言建议