Ads by Yasya El Hakim
Mengenal Class Storage pada Bahasa Pemrograman C++

Class Storage dapat kita gunakan untuk menentukan usia dan kehidupan dan ruang lingkup dari varibel. Bagaimana penyimpanan (Storage) itu dialokasikan untuk variabel serta bagaimana variabel itu diperlakukan oleh compiler, semuanya tergantung dari Class Storage.

Pada dasarnya, Class Storage dibagi menjadi lima tipe:
  1. Variabel Global
  2. Variabel Local
  3. Variabel Register
  4. Variabel Static
  5. Variabel Extern



Variabel Global pada C++

Variabel Global adalah variabel yang sudah didefinisikan diawal, sebelum semua badan dari fungsi dan tersedia di seluruh program. Berikut adalah contohnya:

using namespace std;
int globe;    // Variabel Global
void func();
int main()
{
    .....
}


Variabel Local pada C++

Variabel Local adalah suatu variabel yang dapat di definisikan dan tersedia hanya pada ruang lingkup (Scope) tertentu. Variabel Local juga dapat disebut dengan Variabel Otomatis karena variabel ini dapat muncul ketika ruang lingkupnya dimasukkan dan secara otomatis akan keluar ketika ruang lingkupnya berakhir.

Keyword auto dapat kita gunakan, tetapi secara default semua variabel lokal adalah auto (otomatis). Jadi, kita tidak perlu menambahkan keyword auto sebelum deklarasi variabel.

Variabel Register pada C++

Variabel Register ini merupakan salah satu jenis dari variabel lokal. Keyword dapat digunakan untuk memberitahukan Compiler untuk mengakses variabel ini secepat mungkin. Variabel ini disimpan di dalam Register agar dapat meningkatkan kecepatan akses.

Tetapi, kalian tidak akan pernah menggunakan atau menghitung alamat dari variabel register dan juga variabel register hanya dapat di deklarasikan di dalam block. Artinya, kalian tidak dapat memiliki variabel register global ataupun statis.

Variabel Static pada C++

Variabel Static adalah variabel yang penyimpanannya sudah di inisialisasi dan dialokasikan hanya sekali diawal ketika program dijalankan dan tidak peduli berapa banyak atau sering digunakan pada program. Variabel Static dapat mempertahankan nilainya sampai program itu berakhir. Berikut adalah contohnya:

void fun()
{
    static int i = 10;
    i++;
    cout << i;
}
int main()
{
    fun();    // Output = 11
    fun();    // Output = 12
    fun();    // Output = 13
}


i adalah Static, maka akan selalu mempertahankan nilainya melalui pemangginalan fungsi dan hanya di inisialisasikan sekali diawal.

Specifier Static juga dapat di gunakan pada Class, tetapi kita akan membahas hal tersebut pada bagian selanjutnya.

Variabel Extern pada C++

Keyword ini dapat kita gunakan untuk mengakses variabel di dalam file yang sudah di definisikan dan di deklarasikan pada file lain. Artinya, keberadaan Variabel Global pada satu file sudah di deklarasikan menggunakan keyword extern pada file lain:

Contoh, terdapat dua file C++. Berikut adalah kode dari File pertama:
file1.cpp

#include <iostream>
using namespace std;
int globe;
void func();
int main()
{
    ...
    ...
}


Berikut adalah kode dari File kedua:
file2.cpp

extern int globe;
int b = globe + 10;


Dari kedua file diatas, Variabel Global pada satu file digunakan pada file lain dengan menggunakan keyword extern.

0Komentar

Sebelumnya Selanjutnya