我在使用 OCaml 中的列表时遇到问题。我读过相互矛盾的陈述,说明是否可以在运行时修改列表。可以在运行时使用 cons 运算符吗?
此外,为什么允许杜宾犬(见下文)出现在吉娃娃名单中?如何将另一只吉娃娃添加到列表中(如最后一行所尝试的)?
class virtual dog =
object
method virtual bark : unit
end;;
class chihuahua =
object
inherit dog
method bark = Printf.printf "Yip!"
end;;
class doberman =
object
inherit dog
method bark = Printf.printf "Roar!"
end;;
let c1 = new chihuahua;;
let c2 = new chihuahua;;
let c3 = new chihuahua;;
let d1 = new doberman;;
let arrayOfDogs = [c1;c2;d1];;
arrayOfDogs :: c3;;