2011-02-18 173 views

回答

7

它們用於值可能是無序的,如NaN爲浮游物和雙打。 1 <>= NaN的計算結果爲false,而x <>= y的計算結果爲任意一對數的真,只要這兩個數都不是NaN。您提及的其他運營商的工作原理是相同的,比照

2

長的答案:

當用於浮點處理,兩個值將作爲比較的A<B一個,A=BA>B或無序的(如果是NaN)。

操作員代表the truth table中的每個有趣的(非常數)行。它們可以解釋爲對於每個操作員具有相應字符的情況都是真實的,除非它具有!,在這種情況下,該值被反轉。

1

它們是D中的比較運算符,就像==,<>=。在D中,值nan(不是數字)被考慮在內。兩個浮點數不僅可以比較小於,等於或大於,而且也可以是無序的,如果其中一個比較值是nan,則是這種情況。因此<>=意味着更少,等於或更大。換句話說<>=表示有序。

!開頭的比較運算符與沒有!的對應運算符完全相反。尤其是,如果其中一個比較項是nan,則它們全部評估爲true

這裏的所有比較運算符在d的完整列表:

  • ==
  • !=
  • >
  • >=
  • <
  • <=
  • !<>=
  • <>
  • <>=
  • !<=
  • !<
  • !>=
  • !>
  • !<>

你可以在the D documentation.找到這個列表所有這些操作符的行爲在這裏解釋。

相關問題