Fungsi ialah subrutin yang mengembalikan hasil (nombor, rentetan aksara, dsb.)
Bayangkan anda telah memesan produk dari kedai dalam talian. Dari sudut pengaturcaraan, anda telah memanggil subrutin tertentu, dan tidak seperti prosedur, subrutin ini mesti mengembalikan hasil - menghantar produk yang anda pesan. Subrutin ini dipanggil
fungsi.
Fungsi diformat dengan cara yang sama seperti prosedur. Satu-satunya
perbezaan daripada prosedur ialah kehadiran pengendali khas kembali,
selepas itu nilai yang akan dikembalikan kepada program utama ialah bertulis.
Fungsi yang mengembalikan min aritmetik bagi dua integer akan kelihatan seperti ini:
purata apungan (int a, int b)
{
purata apungan = (a + b) / 2.;
kembali aug;
}
Ia kekal untuk memahami cara memanggil fungsi ini dalam program utama:
Anda tidak sepatutnya memanggil fungsi dengan cara yang sama anda memanggil prosedur:
purata(10, 5);
Nilai yang dikembalikan oleh fungsi akan hilang. Seolah-olah barangan dari kedai online itu tidak diberikan kepada sesiapa, malah dibuang begitu sahaja. Tidak mungkin pelanggan akan menyukainya.
Lebih tepat untuk menyimpan hasil dalam pembolehubah (atau mencetaknya ke skrin):
a = purata(10, 5);
cout << purata(10, 5);