Template pada C++ - nblognlife

Template pada C++

Contoh Program Template pada C++

     Pada postingan sebelumnya C++ –Konsep Overloading Terhadap Fungsi kita telah mengenal istilah overloading terhadap fungsi. Seperti diketahui dengan menggunakan overloading terhadap fungsi dapat diciptakan beberapa fungsi yang memiliki nama dan tugas yang sama namun dengan tipe data yang berbeda. Hal ini memungkinkan suatu fungsi dapat menerima bermacam-macam tipe dari argumen/parameter aktual dan memberikan nilai balik yang sesuai dengan tipe argumen pemanggilnya (argumen/parameter aktual). Inilah keuntungan overloading terhadap fungsi. Namun kekurangannya adalah penulisan ulang kode untuk sejumlah fungsi meskipun memiliki nama yang sama (Lihat postingan yang membahas tentang overloading terhadap fungsi!).

     Untuk menyederhanakan penulisan kode agar pemrogram tidak perlu menulis ulang sejumlah fungsi dengan nama sama tersebut, C++ menyediakan suatu kemampuan yang disebut dengan Template. Dengan menggunakan template, kompiler akan membangkitkan kode fungsi pada berbagai tipe data secara otomatis.

Syntax:
/*
      Template pada C++
      Microsoft Visual Studio 2012
      By R.S.
*/
#include <iostream>
using namespace std;
#include <conio.h>

//Tdata = tipe data, yang selanjutnya menggantikan posisi tipe data pada pendefinisian fungsi
template <class Tdata>
Tdata perkalian (Tdata bil1, Tdata bil2)
{
      Tdata hasil;
      hasil = bil1 * bil2;
     
      return hasil;
}

int main()
{
    cout<<"TEMPLATE PADA C++"<<endl;
    cout<<"-----------------"<<endl;
    cout<<"Pemanggilan fungsi perkalian dengan menggunakan argumen bertipe DOUBLE"<<endl;
    cout<<"Hasil = "<<perkalian (8.5, 2.2)<<endl; //8.5 x 2.2 = 18.7

    cout<<"\nPemanggilan fungsi perkalian dengan menggunakan argumen bertipe INT"<<endl;
    cout<<"Hasil = "<<perkalian (8, 4)<<endl; //8 x 4 = 32
     
    _getche();
    return EXIT_SUCCESS;
}

Hasil
TEMPLATE PADA C++
-----------------
Pemanggilan fungsi perkalian dengan menggunakan argumen bertipe DOUBLE
Hasil = 18.7

Pemanggilan fungsi perkalian dengan menggunakan argumen bertipe INT
Hasil = 32

Penjelasan
Secara sederhana dapat dijelaskan bahwa ketika fungsi dipanggil dengan tipe data double (“perkalian (8.5, 2.2)”) maka secara otomatis kompiler akan mengubah Tdata menjadi tipe data double. Begitu juga ketika fungsi dipanggil dengan argumen bertipe data integer (“perkalian (8,4)”) maka secara otomatis kompiler akan mengubah Tdata menjadi tipe data int.

Catatan :
“Template sangat bermanfaat untuk fungsi-fungsi yang menangani tugas yang sama namun dengan tipe data yang berbeda.”

[RS]

Klik Like & Share jika postingan ini bermanfaat
Apa tanggapan Anda?

Berikan tanggapan Anda melalui kolom komentar yang telah disediakan.
- Gunakan bahasa yang sopan;
- Saat menjadikan postingan pada blog ini sebagai referensi, jangan lupa mencantumkan sumbernya (link dari blog ini).

Jika blog ini bermanfaat jangan lupa memberikan 'like' atau 'share' untuk mendapatkan update terbaru.

Terima kasih