TCL & Scopes

Tcl mempunyai 2 jenis variabel scope (atau mungkin bila diterjemahkan
menjadi lingkup :P).

  • global
  • global variabel dapat diakses diseluruh script, akan tetapi sebuah
    prosedur/method dapat melakukan overshadow global variabel dengan
    mendefinisikan variable lokal dengan nama yang sama.
  • lokal
  • lokal variabel hanya dapat diakses dalam lingkup sebuah fungsi.

bila didalam fungsi/method ingin menggunakan variabel global, maka
kita menggunakan peringah global, berikut ini adalah contoh dari
program yang menggunakan lokal dan global variabel.

set a 10
set b 20

puts "$a $b"

proc test_scope {} {
    global a
    set a "me good"
    set b "but I feel not good"
    puts "$a $b"

}

test_scope
puts "Nilai dari a sekarang : $a"
puts "Nilai dari b sekarang : $b"

hasilnya adalah sebagai berikut.

% source scope.tcl
10 20
me good but I feel not good
Nilai dari a sekarang : me good
Nilai dari b sekarang : 20
%

dapat dilihat pada fungsi test_scope, bahwa global variabel a, dapat
digunakan apabila kita menggunakan perintah global terlebih dahulu.

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

%d bloggers like this: