ใน C++ อินไลน์ คำหลักที่ใช้ในที่ต่างๆ เพื่อสร้างตัวแปรอินไลน์ หรือเนมสเปซอินไลน์ และเช่นเดียวกับการสร้างเมธอดหรือฟังก์ชันอินไลน์
C++ อินไลน์ ฟังก์ชั่นเป็นแนวคิดที่ทรงพลังซึ่งมักใช้กับคลาส หากฟังก์ชันเป็นแบบอินไลน์ คอมไพเลอร์จะวางสำเนาของโค้ดของฟังก์ชันนั้นไว้ที่แต่ละจุดที่เรียกใช้ฟังก์ชันในขณะคอมไพล์
การเปลี่ยนแปลงใดๆ ในฟังก์ชันแบบอินไลน์อาจทำให้ไคลเอ็นต์ทั้งหมดของฟังก์ชันต้องได้รับการคอมไพล์ใหม่ เนื่องจากคอมไพเลอร์จะต้องแทนที่โค้ดทั้งหมดอีกครั้ง มิฉะนั้น โค้ดดังกล่าวจะยังคงใช้ฟังก์ชันเดิมต่อไป
ในการแทรกฟังก์ชัน ให้วางคำหลัก ในบรรทัด ก่อนชื่อฟังก์ชันและกำหนดฟังก์ชันก่อนเรียกใช้ฟังก์ชัน คอมไพเลอร์สามารถละเว้นตัวระบุแบบอินไลน์ได้ในกรณีที่ฟังก์ชันที่กำหนดไว้มากกว่าบรรทัด
นิยามฟังก์ชันในนิยามคลาสคือนิยามฟังก์ชันอินไลน์ แม้จะไม่ได้ใช้ อินไลน์ ตัวระบุ
ต่อไปนี้เป็นตัวอย่างซึ่งใช้ฟังก์ชันอินไลน์เพื่อส่งกลับค่าสูงสุดของตัวเลขสองตัว -
ตัวอย่าง
#include <iostream> using namespace std; inline int Max(int x, int y) { return (x > y)? x : y; } // Main function for the program int main() { cout << "Max (20,10): " << Max(20,10) << endl; cout << "Max (0,200): " << Max(0,200) << endl; cout << "Max (100,1010): " << Max(100,1010) << endl; return 0; }
ผลลัพธ์
Max (20,10): 20 Max (0,200): 200 Max (100,1010): 1010