Scope Pada GOLANG

Scope Pada GOLANG

Kembali ke program yang kita buat di Materi Awal:

package main
import "fmt"
func main() {    var x string = "Hello World" 
fmt.Println(x) }

Cara lain untuk menulis program sperti diatas adalah seperti dibawah ini, kalian bisa mencoba di editor klik ini,dan masukan koding berikut :
package main

import "fmt"

var x string = "Hello World"
func main() {    
fmt.Println(x) }

Perhatikan kodingan diatas saya memindahkan variabel di luar fungsi utama(func main). Ini menandakan bahwa fungsi lain dapat mengakses variabel x ini,dengan contoh koding berikut:

var x string = "Hello World"
func main () {
fmt.Println (x)}
func f () {
fmt.Println (x)}

Fungsi f(func f) sekarang memiliki akses ke variabel x juga. Sekarang mari kita coba menulis ini sebagai gantinya:

func main () {var x string = "Hello World"
fmt.Println (x)}
func f () {
fmt.Println (x)}

Jika kamu menjalankan program ini, kamu akan melihat kesalahan seperi berikut :
prog.go: tidak terdefinisi: x
Compiler memberitahu kamu bahwa variabel x di dalam fungsi f(func f) tidak ada. Variable itu hanya ada di dalam fungsi utama(func main). Rentang tempat di mana kamu diizinkan untuk menggunakan x disebut lingkup variabel. Menurut spesifikasi bahasa "Go adalah lexical scoped menggunakan blok". Pada dasarnya ini berarti bahwa variabel ada didalam kurung kurawal terdekat {} (blok) termasuk kurung kurawal bersarang (blok), tetapi tidak berfungsi di luarnya. Cakupan bisa sedikit membingungkan pada awalnya.
Ketika kita melihat lebih banyak contoh program Go seharusnya menjadi lebih jelas kan.

MATERI GOLANG

Jika kamu baru di pembelajaran golang, silakan untuk belajar dari materi pertama 

Spread the love

Fajar (Ucup)

Pemilik dan Author dari FajarYusuf.com dan juga seseorang yang gemar membagikan info menarik kepada orang lain.

Tinggalkan Balasan

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *