在哪里"块"

Jor*_*gel 0 haskell

我正在做一个具有非常相似的代码块的程序,我试图在"块"中创建一个位置.只是一个例子

function "sum" x = x + a
function "product" x = x * a
  where 
    a = 2
Run Code Online (Sandbox Code Playgroud)

我希望在两行中替换'a',但我没有发现是否可以使用where

提前致谢

Ing*_*ngo 7

如果你真的需要这个,你需要合并两个函数子句.一种方法:

func what x = case what of
        "add" -> x+a
        "mul" -> x*a
    where
       a = 2
Run Code Online (Sandbox Code Playgroud)

  • 请注意,如问题所示,为不同的参数定义多次函数实际上只是像这样的`case`块的语法糖. (3认同)