C++ function pointer

karena lain dan satu hal, akhirnya harus pegang module yang gabungin modul satu dengan modul lain. ketiga modul ini cuma bisa ketemu di satu tempat, wallhasil harus ada cara buat biar internal tiap modul bisa dipake di didalam modul tersebut.

satu cara yang dipakai adalah dengan menggunakan pointer ke function yg ingin di gunakan tersebut.

umpama, kita ada fungsi tambah simple aja di module A

int tambahSimple(int a){
return a+ 9;
}

terus ada juga tambah ga begitu simple

int tambahGasimple(int a){
return a* 90 * 100+89;
}

dimain kita bisa nulis seperti ini

int main(){
int (*ptrFunc)(int); // notice this is a pointer
//notice to we use a bracket inside function name
// now we can do this
ptrFunc = tambahSimple; // function name berubah jadi pointer
cout << ptrFunc(9) << endl ; // ends wih 18
ptrFunc = tambahGaSimple;
cout << ptrFunc(9) << endl; // hasilnya bukan 18
return 0;
}

neat right? functional programming sebelum waktunya datang.

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s