我想做这样的事情:
if is_proximity(leo,bob) = true then let list_1 = create_player(list_1) in list_1 else list_1;;
尝试此操作时,出现错误:Warning 10: this expression should have type unit.
请注意,函数create_player(list_1)将一个元素添加到list_1
答案 0 :(得分:1)
您似乎正在寻找类似的东西
let list1 = … in
…
let list2 = if is_proximity(leo,bob) then create_player(list_1) else list_1 in
…;;
答案 1 :(得分:0)
怎么样?
let list_1 =
if is_proximity leo bob then
create_player list_1 (* Or, something like (new_player () :: list_1)? *)
else
list_1
in ...
您看到的警告指出表达式的类型是某种类型的列表,而不是单位类型。如果要在此之后使用list_1
,则可以使用let ... in ...
或全局let
。