在下面thisIsAlwaysTrue应该永远是真的.
DateTime d = DateTime.Now;
bool thisIsAlwaysTrue = d == d;
但DateTime.Now是否以这样的方式工作,即theThisAlwaysTrue保证是真的?或者可以在引用Now属性之间改变时钟?
bool isThisAlwaysTrue = DateTime.Now == DateTime.Now;
DateTime.Now属性是volatile,这意味着它肯定可以在使用之间更改.但是你赋给它的变量不是易变的.
所以这应该始终将结果设置为true:
DateTime d = DateTime.Now;
bool result = d == d;
它将DateTime.Now返回的值赋给d变量,而不是属性本身.因此,d将始终等于该代码中的d.
但这并不总是将结果设置为true:
bool result = DateTime.Now == DateTime.Now;
| 归档时间: | 
 | 
| 查看次数: | 253 次 | 
| 最近记录: |