zoukankan      html  css  js  c++  java
  • perl6中函数参数(2)

     1 use v6;
     2 #如果参数是可选的, 可以在后面加个?后定义
     3 sub Choo($x, $y?){
     4   say $x+$y;
     5 }
     6 Choo(1);
     7 Choo(1,2);
     8 #具名参数, 也就是字典形式的调用
     9 sub Dit(:name($n), :age($a)){
    10   say $n,' is ', $a;
    11 }
    12 Dit(name => 'root', age => '360');
    13 Dit(age=>'php', name=>'localhost');
    14 Dit(:name('li'), :age(20));
    15 #具名参数, 在定义时, 可可以这样
    16 sub Dit2(:$name, :$age){
    17   say $name,'|', $age;
    18 }
    19 #还可以这样调用, 当没带值时, 只加:时, 默认为Treu, 加:!时, 默认为False
    20 Dit2(:name, :!age);
    21 
    22 #如果不知道有多少个参数, 要收集所有参数, 可以用一个*放在变量前收集
    23 #这个*表示收集, 后面的@all还是表示一个数组(注意)
    24 sub All($user, *@all){
    25   say $user;
    26   say @all;
    27 }
    28 All(1,2,3,4,5);
    29 #还可以这样收集
    30 sub All2($user, *%all){
    31   say $user;
    32   say %all.kv;
    33 }
    34 All2(1,a=>1,b=>2);
    35 All2(1,:a(2), :b, :!c);
    36 
    37 
    38 
    39 sub Arr($a, @a, %a){
    40   say $a;
    41   say @a;
    42   say %a.kv;
    43 }
    44 my $a=1;
    45 my @a=1;
    46 my %a=(:a);
    47 Arr($a, @a, %a);
  • 相关阅读:
    2020/5/8
    2020/5/8
    2020/5/6
    2020/4/30
    2020/4/29
    2020/4/28
    2020/4/27
    KMP算法详解
    博客搬家声明
    洛谷P2831 NOIP2016 愤怒的小鸟
  • 原文地址:https://www.cnblogs.com/perl6/p/6911161.html
Copyright © 2011-2022 走看看