在阅读 EASTL 的代码时,我发现了一行奇怪的代码。以下链接显示了该文件,并标明了1870行。
https://github.com/paulhodge/EASTL/blob/master/include/EASTL/algorithm.h
在这行代码中,if(!(value < *i))
。注释说“我们总是用<或==来表示值比较,但没有任何解释为什么要这样做。还有其他一些地方也放置了相同的注释,但没有任何解释。”
写这样的比较有任何好处吗(也许有我忽略的上下文)?如果没有,为什么 EASTL 的作者故意以这种特定的方式编写它,甚至还要注意到它并加以评论?这里只是出于一致性的原因吗?
NaN
的比较总是返回 false。 - Mysticial