Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> C++

Inline Functions ใน C++

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