2

我正在阅读 OCaml 的语言手册并遇到了“cons”运算符,表示为

::

但是,根本没有解释它是什么,以及它通常用于什么。

4

2 回答 2

6

这是基本的列表结构运算符。该列表由运算符[1; 2; 3]的三个应用构成::

$ ocaml
        OCaml version 4.01.0

# 1 :: 2 :: 3 :: [];;
- : int list = [1; 2; 3]

(从 50 年前的 Lisp 早期开始,这个操作就被称为cons 。)

运算符也可以出现::在模式中,以解构列表:

let rec length l =
    match l with
    | [] -> 0
    | h :: t -> 1 + length t
于 2015-01-26T02:43:14.390 回答
2

还可以查看http://ocaml.org/learn/上的资源— 特别是,“Real World OCaml”一书有一个关于列表的部分

于 2015-01-26T19:56:30.977 回答