簡體   English   中英

如何在 OCaml 的 function 中將字符串變量作為 arguments 傳遞?

[英]How to pass string variables as arguments in function in OCaml?

我為 function 寫了一個簡單的代碼,它接受一個字符串並返回它的長度:

let fun x = String.length x;;

但它顯示語法錯誤。 為什么? 如果我只寫String.length x;; 沒關系,但是我的 function 聲明有什么問題?

如何將字符串變量作為參數傳遞給 OCaml 中的 function?

fun是 OCaml 中的保留關鍵字。 您可以選擇另一個不是關鍵字的名稱,function 將起作用。 以下是 OCaml 中的保留關鍵字列表: https://caml.inria.fr/pub/docs/manual-ocaml/manual071.html

您在這里混合了不同的語法:

  1. 讓 <ident> <ident>* = <expr>
  2. 有趣的 <ident>* -> <expr>

“let”后面必須跟您要創建的 function 的名稱,而作為保留關鍵字的“fun”不是 function 的有效名稱。 它是關鍵字而不是標識符,因此語法解析器會給您一個錯誤。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM