![]() |
1
17
可能是因为它被看作是一个小的、简单的、不可变的数据结构,很像整数或小数。在这些条件下使其成为一个结构使使用DateTime非常有效。如果它是一个类,那么这种效率优势就会丢失,因为每次创建新的日期时间时都需要内存分配。 此外,你能想出多少种不同的日期时间形式?(忽略您心目中的AllternateTostring实现)它并不是一种邀请多态性的类型。 请注意,对于使用不同的DateTimes格式策略(我认为这是您想要的),您最好使用不同的格式设置方法,而不仅仅是使用ToString。如果你看 ICustomFormatter 接口,您将看到如何插入String.Format管道以覆盖格式化,而无需子集现有类型。 |
![]() |
2
15
声明扩展名:
通过这种方式,您可以简单地实现自己在DateTime上使用的方法。这样,它可以轻松地在解决方案中的任何地方使用。唯一需要做的就是使用名称空间。 |
![]() |
3
12
因为它是一个单点。它没有多条数据。在引擎盖下,它由一个长的。 |
![]() |
4
5
如果您想了解更多关于系统类和结构的信息,请下载免费的.NET reflector( http://www.red-gate.com/products/reflector/ ).
|
![]() |
5
5
仅仅因为它是一个结构(或者即使它是一个密封的类),这并不意味着它是道路的尽头。你可以用电脑解决这个问题 composition ,而不是继承。下面是一个将DateTime类“对象化”的示例:
|
![]() |
6
4
我认为它是一个结构,因为结构是值类型,类是引用类型。DateTime中的实际数据是一个长整数。如果它是一个类,那么每次创建一个新对象时,堆上将分配8个字节,堆栈上将为指针分配另外8个字节。因此,通过使DateTime成为一个结构,它有效地将内存需求减少了一半。 您可以在中找到更多信息 this question . |
![]() |
7
3
如果您想要自定义格式,您可以像图中所示那样实现它 here |
![]() |
8
2
|
|
malife89 · 将java中的字符串读取为正确的日期格式 7 月前 |
![]() |
Jas Mahay · 使用日期和日历:需要社区帮助来提高工作表的效率 1 年前 |
![]() |
ViSa · 如何从Pandas的列中提取日期? 1 年前 |
![]() |
Wolfspirit · 你如何确定一个时间点是否在一个时间段内? 1 年前 |
![]() |
Steven · Python的美国/纽约时间偏移显示-04:56 1 年前 |