C++ Inline Function เป็นแนวคิดอันทรงพลังที่มักใช้กับคลาส หากฟังก์ชันเป็น Inline คอมไพเลอร์จะวางโค้ดของฟังก์ชันนั้นแทนที่จุดเรียกใช้ในขณะคอมไพล์
การเปลี่ยนแปลง Inline Function อาจต้อง Recompile ทุก Client เพราะคอมไพเลอร์ต้องแทนที่โค้ดใหม่ทั้งหมด
เพื่อทำให้เป็น Inlice ให้วางคีย์เวิร์ด inline ก่อนชื่อฟังก์ชัน และนิยามฟังก์ชันก่อนการเรียกใช้ คอมไพเลอร์อาจละเลย inline qualifier หากฟังก์ชันยาวเกินไป
ฟังก์ชันที่นิยามภายในคลาสเป็น Inline Function อัตโนมัติ แม้ไม่มีคีย์เวิร์ด inline
ตัวอย่าง
#include <iostream>
using namespace std;
inline int Max(int x, int y) {
return (x > y) ? x : y;
}
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