Apa itu Function Declaration? Apa itu Function Definition pada Class? Bagaimana penulisannya?
Dalam bahasa pemrograman, kita pasti akan selalu mendengar istilah “Declaration” dan “Definition”. Coba perhatikan contoh berikut ini, berikut merupakan variable Declaration dan Variable Definition (ingat, ini adalah Variable, bukan Function).
Int panjang; //ini adalah declaration
panjang = 30; //ini adalah definition
Baris pertama kode diatas adalah Declaration, sedangkan baris kedua nya adalah Definition. Bahasa gampangnya yaitu deklarasi adalah pengenalan nama, definisi adalah isi dari nama yang telah kita deklarasikan.
Sebelum kita menginjak Function Declaration dan Function Definition pada Class , kita akan kembali ke TK terlebih dahulu, kita buka lagi tentang function main().
Function main() pada C++ merupakan fungsi utama akhir yang akan dieksekusi, fungsi ini harus terletak di paling bawah dari fungsi – fungsi yang lain. Nah, gambar berikut ini merupakan contoh penulisan fungsi luas() dan fungsi main(), ingat fungsi main() berada paling bawah dari fungsi yang lain.
Gambar 1:
Nah, apa yang terjadi bila fungsi luas tersebut diletakan di bawah fungsi main?? Pasti error pada compiler, berikut ini merupakan contoh code dan hasil runtime nya.
Gambar 2:
Bisa anda lihat, meletakkan Function Definition dibawah fungsi main maka akan terjadi error saat runtime.
Dalam C++, bila kita meletakkan function definition di bawah fungsi main(), maka kita perlu membuat function declaration nya terlebih dahulu, lihat gambar berikut, kita membuat function declaration sehingga error dapat dihindari.
Gambar 3:
Lihat, pada kode diatas, kita telah membuat function declaration dan function definition.
Int luas(int, int); ini adalah function declaration, sedangkan berikut ini,
Int luas(int a, int b){return (a*b);} ini adalah function definition.
Mudah bukan membedakan mana function declaration mana function definition?
Saya akan melengkapi kodenya agar lebih mudah:
Gambar 4:
Kemudian saya akan mencoba mencoba membuat variable declaration dan variable definition.
Gambar 5:
Mudah sekali bukan?? Yuk kita lanjut ke Class :) Sekarang mari kita masuk kedalam ‘function Declaration’ dan ‘function Definition’ pada Class. Masih ingatkah dengan class Rectangle kita kemarin??
Kemarin kita telah membuat sebuah class Rectangle dengan contructor dan sebuah function definition. Ingat, sebuah function definition (bukan function declaration). Lihatlah contoh kode class kita berikut ini.
Gambar 6:
Dalam class Rectangle di atas, kita memiliki class member, yaitu function luas. Ini adalah class member. Coba perhatikan function luas() diatas, itu adalah function definition. Nah, dalam c++, developer diperbolehkan mendefinisikan sebuah fungsi di luar class. Ya, di luar class. Tidak di dalam Class.
Luh, terus bagaimana jadinya? Masak membuat function yang merupakan member class tapi definisinya di luar class?
Nah, untuk membuat function di luar class, developer diberikan sebuah operator scope atau double colon (::)
Perhatikan contoh berikut, kita akan men-declarasikan function di dalam class, kemudian men-definisikan function tersebut di luar class.
Gambar 7:
Perhatikan, kita telah membuat function declaration, dan kita telah membuat function definition yang merupakan member class. Dan kita membuatnya di luar class. Perhatikan pula kita juga menggunakan operator double colon ( :: ).
Atau bisa juga saya membuat sebuah contoh lain seperti berikut ini:
Gambar 8:
Nah, inilah yang disebut dengan Function Declaration dan Function Definition. Jadi untuk anda para pemula, jangan bingung bila bertemu dengan class dan function yang modelnya seperti itu.
Mudah – mudahan bermanfaat tutorial simple ini, dan sampai jumpa kembali pada tutorial berikutnya.
Function main() pada C++ merupakan fungsi utama akhir yang akan dieksekusi, fungsi ini harus terletak di paling bawah dari fungsi – fungsi yang lain. Nah, gambar berikut ini merupakan contoh penulisan fungsi luas() dan fungsi main(), ingat fungsi main() berada paling bawah dari fungsi yang lain.
Gambar 1:
Nah, apa yang terjadi bila fungsi luas tersebut diletakan di bawah fungsi main?? Pasti error pada compiler, berikut ini merupakan contoh code dan hasil runtime nya.
Gambar 2:
Bisa anda lihat, meletakkan Function Definition dibawah fungsi main maka akan terjadi error saat runtime.
Dalam C++, bila kita meletakkan function definition di bawah fungsi main(), maka kita perlu membuat function declaration nya terlebih dahulu, lihat gambar berikut, kita membuat function declaration sehingga error dapat dihindari.
Gambar 3:
Lihat, pada kode diatas, kita telah membuat function declaration dan function definition.
Int luas(int, int); ini adalah function declaration, sedangkan berikut ini,
Int luas(int a, int b){return (a*b);} ini adalah function definition.
Mudah bukan membedakan mana function declaration mana function definition?
Saya akan melengkapi kodenya agar lebih mudah:
Gambar 4:
Kemudian saya akan mencoba mencoba membuat variable declaration dan variable definition.
Gambar 5:
Mudah sekali bukan?? Yuk kita lanjut ke Class :) Sekarang mari kita masuk kedalam ‘function Declaration’ dan ‘function Definition’ pada Class. Masih ingatkah dengan class Rectangle kita kemarin??
Kemarin kita telah membuat sebuah class Rectangle dengan contructor dan sebuah function definition. Ingat, sebuah function definition (bukan function declaration). Lihatlah contoh kode class kita berikut ini.
Gambar 6:
Dalam class Rectangle di atas, kita memiliki class member, yaitu function luas. Ini adalah class member. Coba perhatikan function luas() diatas, itu adalah function definition. Nah, dalam c++, developer diperbolehkan mendefinisikan sebuah fungsi di luar class. Ya, di luar class. Tidak di dalam Class.
Luh, terus bagaimana jadinya? Masak membuat function yang merupakan member class tapi definisinya di luar class?
Nah, untuk membuat function di luar class, developer diberikan sebuah operator scope atau double colon (::)
Perhatikan contoh berikut, kita akan men-declarasikan function di dalam class, kemudian men-definisikan function tersebut di luar class.
Gambar 7:
Perhatikan, kita telah membuat function declaration, dan kita telah membuat function definition yang merupakan member class. Dan kita membuatnya di luar class. Perhatikan pula kita juga menggunakan operator double colon ( :: ).
Atau bisa juga saya membuat sebuah contoh lain seperti berikut ini:
Gambar 8:
Nah, inilah yang disebut dengan Function Declaration dan Function Definition. Jadi untuk anda para pemula, jangan bingung bila bertemu dengan class dan function yang modelnya seperti itu.
Mudah – mudahan bermanfaat tutorial simple ini, dan sampai jumpa kembali pada tutorial berikutnya.