LoginSignup
0
0

More than 1 year has passed since last update.

【プログラミング初学者向け】Sift関数を使用するあれこれ【Perl】

Posted at

はじめに

プログラミング初学者がPerlを学習する上でメモ書きとして投稿している記事になります。
間違った箇所などがあればご指摘よろしくお願いいたします。

背景

独学で勉強したshift関数と職場で使用したshift関数の使い方がちょっと違っていた?から

目的

Perlを学びたての人にshift関数の使い方について共有できればと思います。

Shift関数とは

配列の先頭の要素を取得する関数。先頭の要素は切り出され、元の配列からはなくなることに注意してください。

 hello.pl
#処理内容
#hello.plファイルをあらかじめ作成しておきましょう
my @nums = (1, 2, 3);
my $first = shift @nums;
print "$first\n";

#コマンドラインでhello.plまで進みpl hello.plを実行
1

違う使い方

今度は、自分がこうゆう使い方もあるんだってなった書き方(俺の調査不足で普通に使われてる説あるけど。。)

hello.pl
my @name = ('ItoMakoto', 'SaionjiSekai');

my $ref = sub {
  my $hello_name = shift;#2つある配列の先頭を持ってきている
  print "Hello,$hello_name.\n";
};

$ref->($name[0]);
#結果
 Hello,ItoMakoto

うーむ。読者を置き去りにしていないだろうか。。
変数refの中身に渡された配列($name[0])の1番目の値('ItoMakoto')がshift関数によって渡されてきた感じです!

2番目で出てきている例は、無記名サブルーチンというものを使用しているので詳しく知りたい方は
無名サブルーチンを参照してもらえれば助かります( ; ; )

参考にしたサイト

Perlゼミ shift関数

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0