加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

Perl6 – 在一些子例程签名中,$:for是什么

发布时间:2020-12-15 21:50:16 所属栏目:大数据 来源:网络整理
导读:我在 another question中遇到了这个错误消息,我想知道$:部分签名是什么意思,好吗? Cannot resolve caller index(Str: Str,Any); none of these signatures match: (Str:D $: Cool:D $needle,*%_) (Str:D $: Str:D $needle,*%_) (Str:D $: Cool:D $needle,C
我在 another question中遇到了这个错误消息,我想知道$:部分签名是什么意思,好吗?
Cannot resolve caller index(Str: Str,Any); none of these signatures match:
      (Str:D $: Cool:D $needle,*%_)
      (Str:D $: Str:D $needle,*%_)
      (Str:D $: Cool:D $needle,Cool:D $pos,Int:D $pos,*%_)

解决方法

$:是两个截然不同的无关标记,一个是美元,一个是:它们一起被粉碎了.

$代表单个item1又称scalar2.

单项/标量没有给出名称,因此无法引用它.并且已经有足够的参数(Str:D)让你和编译器知道这个参数是标量(单个字符串).无论哪种方式,$都是多余的,Elizabeth has made a related change.

:是一个特殊的参数分隔符. (通常的参数分隔符是逗号,.)

它只能在方法的第一个参数或独立签名后立即使用.它不能用于不是方法的例程的签名.

如果在签名中的第一个参数之后用作参数分隔符,则会将该参数标记为对应于方法“invocant”.

(如果未使用,则invocant参数是隐式的.)

无论如何,相应的invocant参数都将到达,并且无论签名是否明确地列出了一个调用参数,它都是别名的.但是,如果显式指定了invocant参数,则可以为其提供附加/备用名称和/或明确约束其类型.

疯狂的顶级脚注增加娱乐.如果他们混淆了你,就忘记你曾经读过它们.

1单个项目指的是自然是单个事物的数据,如数字42,OR数据自然是复合事物(如数组),它被视为单个事物(如数组). (你看到我在那里做了什么吗?)我想指出一个符号就像一个S(对于单个)覆盖着一个I(对于项目)的助记符,反之亦然.对我而言,这代表了强调任何数据的单项性质的想法,隐藏任何复数方面,即使它实际上是一个数组或其他复合数据项.

2“标量”是一个传统的计算术语. Wikipedia’s Scalar disambiguation page列出了“变量(计算)或标量,一次只能保存一个值的原子数量”作为定义.此外,单个项目也称为标量(全部小写)通常/通常是Scalar(大写S),单个项目的特殊情况是包含单个项目的单个项目容器(可以将复合数据视为单个项目)事情).

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读