1. 程式人生 > >什麽叫pure function(純函數)

什麽叫pure function(純函數)

輸入參數 需要 觀察 計算機 求值 通過 外部 csdn 然而

(來自:http://en.wikipedia.org/wiki/Pure_function)

在計算機編程中,假如滿足下面這兩個句子的約束,一個函數可能被描述為一個純函數:

  • 給出同樣的參數值,該函數總是求出同樣的結果。該函數結果值不依賴任何隱藏信息或程序執行處理可能改變的狀態或在程序的兩個不同的執行,也不能依賴來自I/O裝置的任何外部的輸入(通常是這樣的--看下面的描述)。
  • 結果的求值不會促使任何可語義上可觀察的副作用或輸出,例如易變對象的變化或輸出到I/O裝置。


該結果值不需要依賴所有(或任何)參數值。然而,必須不依賴參數值以外的東西。函數可能返回多重結果值,並且對於被認為是純函數的函數,這些條件必須應用到所有返回值。假如一個參數通過引用調用,任何內部參數變化將改變函數外部的輸入參數值,它將使函數變為非純函數。

https://blog.csdn.net/hongweigg/article/details/44035283

什麽叫pure function(純函數)