Haskell - 类型定义

时间:2016-11-07 00:45:27

标签: haskell

我有两种类型

type Rotor = String 
type Reflector =[(Char, Char)]

我知道type SimpleEnigma正好有3 Rotor和1 Reflector。如何定义SimpleEnigma

提前致谢!!

1 个答案:

答案 0 :(得分:2)

data SimpleEnigma = SimpleEnigma Rotor Rotor Rotor Reflector

我们使用data关键字定义一个新的代数数据类型,该类型包含三个类型为Rotor的值和一个类型为Reflector的值。

请注意,您将值构造函数(等于右侧的SimpleEnigma)的名称更改为SimpleEnigma以外的值,并更改类型Rotor和{{1}的顺序}}