Senin, 14 November 2016

Tentang Namespace C++

Hmmmm.....banyak sekali perbedaan penulisan antar bahasa c / c++ ...meskipun masih dalam bahasa pemrograman yang sama. Banyak perbedaan bahasa yang diajarkan dengan yang sekarang, salah satunya adalah “using namespace std;”

Bentuk umum penulisan
using namespace std;  

Contoh Program
#include <iostream>
using namespace std; // apa ini ?

int main ()
{
   cout<<”Selamat datang di BelajarCPP.com”
   return 0;
}

using namespace std” terdiri dari 3 statements yaitu “using”, “namespace” dan “std”, mari kita kenali mereka bertiga sebelum tau fungsi penggunaan “using namespace std”.
  • using adalah deklarasi arahan / panggilan / pemberitahukan kepada kompiler untuk penggunaan deklarasi namespace dan anggota namespace.
  • namespace adalah penyedia metode untuk mencegah komflik nama dalam proyek-proyek besar. Simbol pendeklarasian di dalam blok namespace ditempatkan di lingkup bernama yang akan mencegah mereka pada keliruan pengenalan pada scope yang lainnya. Jika pendeklarasiannya seperti diatas, itu berfungsi untuk memanggil namespace yang telah dibuat.
  • std adalah nama namespace tersebut yang sudah tersedia dan tidak perlu dibuat ulang menggunakan fungsi namespace, cukup dipanggil. Std merupakan wadah urutan yang merangkum ukuran data dan array dinamis. Di dalam std terdapat halnya seperti cout, cin, endl dan lain-lain.

Kita mungkin pernah melihat penggunaan std dengan cara diatas maupun seperti std::cout pada program-program sebelumnya.
 #include <iostream>

int main ()
{
   std::cout<<”Selamat datang di BelajarCPP.com”
   return 0;
}

std::cout yang mengidentifikasi STandarD::Character OUTput . Fungsi utama using namespace std pada pendeklarasian tersebut adalah untuk memberitahukan kepada kompiler bahwa kita akan menggunakan semua fungsi , class atau file yang terdapat pada memori namespace std.

Jadi jika kita telah menggunakan pernyataan “using namespace std” kita tidak perlu repot-repot menambahkan std:: di depan fungsi-fungsi untuk memanggil fungsi seperti fungsi cout, cin dan sebagainya yang terdapat dalam namespace std.


Namespace merupakan group atau kumpulan entities (class, object, function) yang dikelompokkan dalam satu nama. Perhatikan kode berikut ini, kita akan membuat sebuah namespace baru dengan nama mediatutorial.
Lihat gambar 1:


Lihat, kita membuat namespace, kita berikan nama ‘mediatutorial’ dan isi dari namespace tersebut adalah entities yang berupa variable a dan b. Variable ini berjenis integer (int). Mudah bukan?

Mari kita membuat namespace yang lain, 
Lihat gambar 2:


Nah, kita kemudian membuat sebuah namespace baru, gampang kan cara membuat namespase yang baru ini?
Lalu bagaimana cara memanggilnya???
OK, perhatikan kode berikutnya,
Lihat gambar 3:


Gampang bukan???

Nah, untuk pemanggilan namespace itu sendiri kita dapat menggunakan nama dari namespace diikuti operator “ :: “. Contohnya pada kode di atas.

Selain itu kita juga bisa menggunakan ‘using’. Caranya adalah seperti pada kode berikut ini,
Lihat gambar 4:


Bila kita menggunakan using SEPERTI PADA KODE DI A TAS, maka kita tidak perlu menggunakan nama namespace diikuti ::, cukup langsung nama variable nya saja.

Nah, bisa juga menggunakan using SEPERTI DI BAWAH INI,
Lihat gambar 5:


Bila kita menggunakan using SEPERTI KODE TERSEBUT maka kita masih menggunakan ::. Ternyata banyak sekali bukan penulisan – penulisannya??

Apakah hanya sebatas itu?? Tidak, kita bisa menggabung – gabungkan penulisannya seperti pada kode berikut ini,
Lihat gambar 6:


Mudah bukan, kita bisa memakai gaya apa saja, entah itu pakai:

Using namespace mediatutorial;

Atau

Using mediatutorial:a;
Atau 

Mediatutorial:a;

Sebetulnya apa sih fungsi dari namespace itu? Fungsi dari namespace adalah untuk meng-spesifikasi entities (class, function, variable) yang ada di dalam namespace, sehingga bila kita memiliki variable atau fungsi yang sama maka tidak akan saling bentrok dan overwrite.

Bayangkan bila anda membuat sebuah variable yang memiliki nama yang sama. Apa yang terjadi bila variable yang anda buat tersebut memiliki nama yang sama.

Apa yang terjadi bila fungsi yang anda buat memilki nama yang sama?

Ya, pasti akan di-overwrite atau error.

Nah, dengan namespace, kita bisa memanggil fungsi atau variable secara sendiri – sendiri meski variable atau fungsi tersebut memiliki nama yang sama.
Berikut merupakan contohnya:
Lihat gambar 7:


Nah, anda bisa lihat, kita sama sama membuat fungsi dengan nama ‘berapa’. Dengan menggunakan namespace maka tidak ada terjadi overwrite pada fungsi.



Reff:
http://www.mediatutorial.web.id/2014/01/apa-itu-namespace-bagaimana-cara-menggunakannya.html
http://www.belajarcpp.com/2016/03/fungsi-using-namespace-std-cplusplus.html


Tidak ada komentar:

Posting Komentar