引发错误匹配内部在OCaml中,我有一个包含城市名称的字符串列表(像“1 - 纽约; 2,伦敦; 3 - 巴黎”)。我需要让用户输入一个数字(如果他们想要伦敦,他们必须输入2)。 我想提出一个例外信息,说明这个城镇是无效的,如果这个人在例子中键入例如“4”。 我想这一点,但它不工作:OCaml的:与结构
let chosenTown = match int_of_string (input_line stdin) with | x > (length listOfTowns) -> raise (Err "Not a valid town")
什么是代码的好办法,“如果选中的数字比列表的长度是更大然后引发错误”?
不工作是一个模糊的一句 – ivg
有另一种方式来限制用户只能从现有的数字选择?如果列表中有3个项目,那么该人不能选择“4”? –
好的,通过“不行”我的意思是我得到:“错误:语法错误” –