ใน C ++ มีคุณลักษณะที่ดีอย่างหนึ่งที่เรียกว่าฟังก์ชันอินไลน์ ฟังก์ชันประเภทนี้เหมือนกับมาโครของ C หรือ C++ ในการใช้ฟังก์ชันอินไลน์ เราต้องระบุคีย์เวิร์ดอินไลน์ เราสามารถใช้ฟังก์ชันประเภทนี้ได้ทุกที่ แต่เราควรปฏิบัติตามหลักเกณฑ์บางประการ
สามารถใช้อินไลน์ได้เมื่อใด
-
สามารถใช้ฟังก์ชันอินไลน์แทนมาโครได้ (#define)
-
สำหรับฟังก์ชันขนาดเล็ก เราสามารถใช้ฟังก์ชันอินไลน์ได้ มันสร้างโค้ดที่เร็วขึ้นและไฟล์สั่งการที่มีขนาดเล็กลง
-
เมื่อฟังก์ชันมีขนาดเล็กและเรียกใช้บ่อยมาก เราสามารถใช้อินไลน์ได้
เมื่อเราควรหลีกเลี่ยงการใช้อินไลน์?
-
เราไม่ควรใช้ฟังก์ชันที่ผูกกับ I/O เป็นฟังก์ชันอินไลน์
-
เมื่อใช้โค้ดขนาดใหญ่ในบางฟังก์ชัน เราควรหลีกเลี่ยงอินไลน์
-
เมื่อใช้การเรียกซ้ำ ฟังก์ชันอินไลน์อาจทำงานไม่ถูกต้อง
จุดหนึ่งที่เราต้องจำไว้ว่าอินไลน์ไม่ใช่คำสั่ง มันเป็นคำขอ ดังนั้นเราจึงขอให้คอมไพเลอร์ใช้ฟังก์ชันอินไลน์ หากคอมไพเลอร์ตัดสินใจว่าฟังก์ชันปัจจุบันไม่ควรเป็นฟังก์ชันอินไลน์ ก็สามารถแปลงเป็นฟังก์ชันปกติได้