将列表传递给函数,添加值并打印
Pass list to function, add value and print
我正在尝试传递一个空列表,向其添加一个值,然后打印该值:
let add_to_list (my_list : string list) =
my_list@["somevalue"]; print_list(my_list)
let print_list lst =
print_string(string_of_list(lst) (fun a -> a) ",")
add_to_list [];
列表中没有任何内容。但是当我用 add_to_list ["a"; "b"]
调用它时,只有那些值显示。 Man OCaml 真的很难
@
运算符连接两个列表,returns 结果作为一个新列表——它不影响输入。
您需要在新绑定中捕获结果,然后打印出来:
let add_to_list (my_list : string list) =
let new_list = my_list @ ["somevalue"] in
print_list(new_list)
我正在尝试传递一个空列表,向其添加一个值,然后打印该值:
let add_to_list (my_list : string list) =
my_list@["somevalue"]; print_list(my_list)
let print_list lst =
print_string(string_of_list(lst) (fun a -> a) ",")
add_to_list [];
列表中没有任何内容。但是当我用 add_to_list ["a"; "b"]
调用它时,只有那些值显示。 Man OCaml 真的很难
@
运算符连接两个列表,returns 结果作为一个新列表——它不影响输入。
您需要在新绑定中捕获结果,然后打印出来:
let add_to_list (my_list : string list) =
let new_list = my_list @ ["somevalue"] in
print_list(new_list)