Me-reference dan dereference variabel scalar

 #/usr/bin/perl -w
use strict;
my $nama = 'zaka';
my $ref = \$nama; #$ref = scalar reference ke variabel scalar $nama

Kita bisa lihat bahwa $ref adalah reference yang menunjuk ke nilai string ‘zaka’ (tidak menyimpan string ‘zaka’ tetapi dia hanya menyimpan alamat memori dari string ‘zaka’)

 print $ref, "\n"; #akan mencetak alamat memori dari string "zaka"
#atau SCALAR(0x816addc)

kata “SCALAR” pada kata “SCALAR(0x816addc)” menunjukkan bahwa variabel tersebut adalah SCALAR reference. Untuk menginterogasi jenis reference dari suatu reference kita bisa menggunakan fungsi ref.

 print $$ref, "\n"; #atau
print ${$ref},"\n";

untuk menambahkan string, maka

 $$ref .= 'sembung';

test

 print $$ref,"\n";

apakah $nama juga berubah, tes

 print "$nama \n";

dan kita juga bisa membuat reference untuk konstanta

 my $anon = \666;
print $$anon,"\n";

dan karena sebenarnya kita menyimpan suatu reference ke scalar, maka si ‘scalar’ ini pun bisa disimpan ke array sebagai elemen..

 use strict;

my $no28 = 'kosin';
my $no7 = 'salim alaydrus';
my $no10 = 'redouane barkawi';

my @persib =(\$no28,\$no7,\$no10);
foreach(@persib) {
print ${$_},"\n";
}

..”..Blogging : Programing..”..

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s