ในการสร้างฟังก์ชัน บางครั้งเราก็ต้องการให้ฟังก์ชันของเราใช้งานได้กับตัวแปรต่างชนิดกัน กล่าวคือใช้กับตัวแปรชนิด int ก็ได้ ใช้กับตัวแปรชนิด float ก็ได้ ใช้กับตัวแปรชนิด double ก็ได้
ในภาษา C++ เราจะสามารถสร้างฟังก์ template เพื่อแก้ปัญหาดังกล่าวได้ รูปแบบของฟังก์ชัน template จะเป็นแบบนี้ครับ
template<class ชนิดของตัวแปร>
ชนิดของตัวแปร output ชื่อฟังก์ชัน (input ของฟังก์ชัน)
{
ชุดคำสั่งต่างๆ
}
ตัวอย่างเช่น สมมติว่าเราต้องการสร้างฟังก์ชันที่ให้ค่ามากที่ของตัวเลข 2 ตัว เราอาจสร้างดังนี้
หวังว่าทุกคนคงเข้าใจกันนะครับ
ในบรรทัดที่ 3 ถึง 8 ก้คือการทำงานของโปรแกรม กล่าวคือ คล้ายๆกับฟังก์ชัน แต่ถ้าเป็นฟังก์ชันจะเขียนดังนี้
สิ่งที่ต่างก้คือ template ไม่จำเป็นต้องระบุ data type จะใช้เป็น int float double หรือ long ก้ได้
ซึ่งในการประกาศตัวแปรในบรรทัดที่ 14 ของรูปแรก เราเปลียนเป็นอะไรก้ได้
เช่น หวังว่าทุกคนคงเข้าใจกันนะครับ