1. 程式人生 > >Effective_STL 學習筆記(三十九) 用純函數做判斷式

Effective_STL 學習筆記(三十九) 用純函數做判斷式

函數類 effect false 函數 轉換 bsp 對象 stl 排序

1. 判斷式是返回 bool (或者其他隱式轉換為 bool 的東西)。判斷式在 STL 中廣泛使用。標準關聯容器的比較函數是判斷式,判斷式函數常常作為參數傳給算法,比如 find_if 和多種排序算法。

2. 純函數是返回值只依賴於參數的函數。如果 f 是一個純函數, x 和 y 是對象, f(x, y)的返回值僅當 x 或 y 的值改變的時候才會改變。

3. 一個判斷式類是一個仿函數類,它的 operator() 函數是一個判斷式,也就是,它的 operator 返回 true 或 false,任何 STL 想要一個判斷式的地方,都會接受一個真的判斷式或一個判斷式類。

不管怎麽寫你的判斷式,它們都應該是純函數

Effective_STL 學習筆記(三十九) 用純函數做判斷式