gpt4 book ai didi

elixir - 类型规范中的binary、String.t、char_list 和 [char] 之间的区别

转载 作者:行者123 更新时间:2023-12-02 06:50:53 25 4
gpt4 key购买 nike

定义类型规范时,binary、String.t、char_list、[char] 等有哪些不同?

@spec method(binary) :: binary

@spec method(String.t) :: String.t

它们等价吗?医生说:

  • binary 用于 Elixir 字符串。
  • char_list 用于 Erlang 字符串。定义为[char]。

最佳答案

String.tbinary相同,参见其定义here .

char_list 不仅仅是一个简单的字符列表。它在 Erlang 的 unicode 模块中定义为:

maybe_improper_list(char() | unicode_binary() | charlist(),
unicode_binary() | [])

因此它包括正确和不正确的列表,并且列表可以包含字符、二进制文件、字符列表或空列表。

关于elixir - 类型规范中的binary、String.t、char_list 和 [char] 之间的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47835357/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com