ライブラリ

前に作った「麦わら海賊団」をライブラリ化してみます。
ライブラリは、サブルーチンだけを別のファイルに書いておいて、
それを本体で呼び出すといったものです。
本体をkaizoku.pl ライブラリを robin.pl にします。



トライ1
まず、ライブラリとは「サブルーチンのかたまり」なので、サブルーチンだけのファイルを作ります。

sub eastblue{

my @onepiece = ("rufy,zoro,sanji,nami,tyopper");

return @onepiece;

}


sub grandline{

my @onepiece3 = @_;

push(@onepiece3,"robin");

print @onepiece3;

}


この2つがサブルーチンなので、robin.plという名前で別のファイルに保存します。
サブルーチンで忘れてはいけないのが、最後につける1;です。
1をきちんとつけましょう!

残った部分

my @onepiece2 = eastblue(); #受け取る

grandline(@onepiece2); #渡す

この2つをkaizoku.plという名前で保存します。

そして、サブルーチンの呼び出し「require 'test-j.pl';」を処理より上に記入して、
eastblue() を、 &eastblueと書き直します。
さらに
grandline(@onepiece2);の部分を&grandline(@onepiece2);と書き直します。

さて、動かしてみましょう!!!

結果

rufy,zoro,sanji,nami,tyopperrobin

うまくいきました!!1回でうまくいったのでうれしくなってきました〜♪
でも、ライブラリって便利かな。。。??謎

MEMO++++++++++++++++++++++++++++++++

ライブラリは、サブルーチンのかたまり。
最後には必ず1;をつけよう。

  • kaizoku.pl
#!/usr/bin/perl
use strict;

require 'test-j.pl';


my @onepiece2 = &eastblue;
&grandline(@onepiece2);
  • robin.pl
sub eastblue{
my @onepiece = ("rufy,zoro,sanji,nami,tyopper");
return @onepiece;
}


sub grandline{
my @onepiece3 = @_;
push(@onepiece3,"robin");
print @onepiece3;
}
1;